pythongssapi / pythongssapi/python-gssapi

cannot build on NixOS due to undefined C functions in `ext_s4u`

Aperta
#373 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
Python
Stelle
116
Fork
55
Merge medio
1g 24m
PR unite (30g)
2

Descrizione

On NixOS installing gssapi fails with some GCC errors "implicit declaration of function ‘gss_acquire_cred_impersonate_name’" and "implicit declaration of function ‘gss_add_cred_impersonate_name’" when compiling ext_s4u.c:

      gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O3 -Wall -fPIC -DPy_LIMITED_API=51052544 -Igssapi/raw -I/home/lp/.cache/pypoetry/virtualenvs/dipex-GkntI14x-py3.13/include -I/nix/store/qwb5ygz9k8gs5ql9bpxbrsrv12r1icgm-python3-3.13.12/include/python3.13 -c gssapi/raw/ext_s4u.c -o build/temp.linux-x86_64-cpython-313/gssapi/raw/ext_s4u.o -I/nix/store/9jsgjswa0jmgbwk3l8ha2dy45yr4dz62-krb5-1.22.1-dev/include
      gssapi/raw/ext_s4u.c: In function ‘__pyx_pf_6gssapi_3raw_7ext_s4u_acquire_cred_impersonate_name’:
      gssapi/raw/ext_s4u.c:3282:28: error: implicit declaration of function ‘gss_acquire_cred_impersonate_name’ [-Wimplicit-function-declaration]
       3282 |         __pyx_v_maj_stat = gss_acquire_cred_impersonate_name((&__pyx_v_min_stat), __pyx_v_impersonator_cred->raw_creds, __pyx_v_name->raw_name, __pyx_v_input_ttl, __pyx_v_desired_mechs, __pyx_v_c_usage, (&__pyx_v_creds), (&__pyx_v_actual_mechs), (&__pyx_v_actual_ttl));
            |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      gssapi/raw/ext_s4u.c: In function ‘__pyx_pf_6gssapi_3raw_7ext_s4u_2add_cred_impersonate_name’:
      gssapi/raw/ext_s4u.c:3945:28: error: implicit declaration of function ‘gss_add_cred_impersonate_name’ [-Wimplicit-function-declaration]
       3945 |         __pyx_v_maj_stat = gss_add_cred_impersonate_name((&__pyx_v_min_stat), __pyx_v_raw_input_cred, __pyx_v_impersonator_cred->raw_creds, __pyx_v_name->raw_name, (&__pyx_v_mech->raw_oid), __pyx_v_c_usage, __pyx_v_input_initiator_ttl, __pyx_v_input_acceptor_ttl, (&__pyx_v_creds), (&__pyx_v_actual_mechs), (&__pyx_v_actual_initiator_ttl), (&__pyx_v_actual_acceptor_ttl));
            |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      error: command '/run/current-system/sw/bin/gcc' failed with exit code 1

I have installed the gcc, krb5 and krb5.dev nix packages which should have all the necessary dependencies to build gssapi.

Steps to reproduce

  • Run NixOS 25.11
  • Add gcc, krb5 and krb5.dev to your system packages
  • Enable dynamically linked libraries (needed to run Python): programs.nix-ld.enable = true;
  • Rebuild
  • Create and enter a virtual environment
  • Run pip install gssapi

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia riproducendo il fallimento dell’installazione di NixOS con i pacchetti gcc, krb5 e krb5.dev elencati, quindi esamina gssapi/raw/ext_s4u.c e gli input di build utilizzati da pip install gssapi. Conferma la modifica ricompilando correttamente l’estensione sulla configurazione NixOS indicata, senza errori relativi a funzioni non definite.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
c, nixos, python
Ambito
build-system
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
55/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.