pythongssapi / pythongssapi/python-gssapi

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

オープン
#373 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

主要言語
Python
スター
116
フォーク
55
平均マージ
1日 24分
マージ済み PR(30日)
2

説明

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

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

まず、記載されている gcc、krb5、krb5.dev パッケージを使って NixOS のインストール失敗を再現し、その後 gssapi/raw/ext_s4u.c と pip install gssapi で使用されるビルド入力を調査します。指定された NixOS セットアップで拡張機能を正常に再ビルドし、未定義関数エラーが発生しないことを確認します。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
c, nixos, python
領域
build-system
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
静か
明瞭さ
おおむね明確
初心者へのやさしさ
55/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。