Ticket #39882

python3extがビルド出来ない

Eröffnet am: 2020-01-02 00:18 Letztes Update: 2020-12-21 11:22

Auswertung:
Verantwortlicher:
(Keine)
Typ:
Status:
Geschlossen
Komponente:
(Keine)
Meilenstein:
(Keine)
Priorität:
5 - Mittel
Schweregrad:
5 - Mittel
Lösung:
Keine
Datei:
2

Details

Fedora 31 上で、skf-2.10.12 を使うと python(3)ext がビルド出来ません。

$ python3 --version
Python 3.7.6
+ ./configure <snip> --enable-python3 --with-python_sitearch_dir=/usr/lib64/python3.7/site-packages
+ make -j1 pythonext

make[1]: ディレクトリ '/home/tasaka1/rpmbuild/fedora-specific/skf/master/skf-2.10.12/python3' に入ります
gcc -I/usr/include/python3.7m -I/usr/include/python3.7m -DUNI_DECOMPOSE -DFOLD_SUPPORT -DDYNAMIC_LOADING -DKEIS_EXTRA_SUPPORT -DSKFDEBUG -DSKFPDEBUG -DOLD_NEC_COMPAT -DFAST_GETC -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-strict-aliasing -DHAVE_GETENV -DHAVE_CONFIG_H -I. -I. -I.   -DROT_SUPPORT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DTABLEDIR="\"/usr/lib64/skf/lib/2.10\""  -DDEFAULT_EOL_LF -DSYSTEM_EXEEXT=\"""\" -fPIC -D_GNU_SOURCE -D_REENTRANT -DSWIG_EXT -DSKF_PYTHON3 -DSKF_PYTHON -O2  -Wno-format-security -fno-delete-null-pointer-checks  -Wall -flto -Wno-empty-body -Wno-unused-parameter -Wno-unused-but-set-variable -Wno-sign-compare -Wjump-misses-init -Wno-implicit-fallthrough  -DSKF_PYTHON3 -DSKF_PYTHON -c skf_convert_f_wrap.c \
		-o skf_convert_f_wrap.o

skf_convert_f_wrap.c:3179:22: エラー: ‘sstedef’ undeclared (first use in this function); did you mean ‘sstrdef’?
 3179 |       setsstrdummies(sstedef);
      |                      ^~~~~~~
      |                      sstrdef
skf_convert_f_wrap.c:3179:22: 備考: 未宣言の識別子は出現した各関数内で一回のみ報告されます
skf_convert_f_wrap.c:3232:20: エラー: ‘codeset_utf32benb’ undeclared (first use in this function); did you mean ‘codeset_utf32beb’?
 3232 |       in_codeset = codeset_utf32benb;
      |                    ^~~~~~~~~~~~~~~~~
      |                    codeset_utf32beb


  • ソースを見る限り、確かに間違っていそうなのですが、そもそも configure の option が間違っていて、そのコードは使わないはず、とかだったりするでしょうか?
  • そもそも、python(3)extの使い方が良く分かってません。 python(3)ext がうまくいっているか確認出来る為のサンプル(テスト)コードを示していただけないでしょうか。

Ticket-Verlauf (3/10 Historien)

2020-01-02 00:18 Aktualisiert von: mtasaka
  • New Ticket "python3extがビルド出来ない" created
2020-01-29 22:46 Aktualisiert von: efialtes
Kommentar

どこかで壊したようです。上記は多分必要な修正ですが、いま build 環境が壊れていてちょっと確認できない。すみません。 使い方ですが、python 用は他の言語用と違って文字列操作用ではないです。byte 配列を byte 配列に変換するものです。文字列入力も自動判定するようになっていたはずですが。このへんの文書化はちょっとまってください。man だと何のことだかわからないと思われるので。

2020-11-20 00:27 Aktualisiert von: efialtes
Kommentar

2.10.13 で一応対処。もともとが PEP 393 に対応していなかったこともあり、かなり書き換えました。自分では余り使っていないこともあって正直自信ないんですけど、テストスクリプトは意図通り、のつもり。

2020-11-20 00:50 Aktualisiert von: efialtes
Kommentar

ごめんなさい。まずいなこれ。週末まで待ってください。

2020-11-22 00:29 Aktualisiert von: efialtes
Kommentar

2.10.14 で直したつもりです。なにかおかしかったらまたチケットお願いします。

2020-12-04 15:10 Aktualisiert von: mtasaka
Kommentar

後ほど確認します。

2020-12-21 11:22 Aktualisiert von: mtasaka
Kommentar

2.10.14 で python3 binding がうまくいく事を確認しました。有難うございます!

2020-12-21 11:22 Aktualisiert von: mtasaka
  • Status Update from Offen to Geschlossen

Dateianhangliste

Bearbeiten

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Anmelden