問題タブ [python-sip]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
607 参照

python-3.x - PyQt-gpl-5.5.1 と sip for python 3.4.3+ のインストール

PyQt-gpl-5.5.1 が必要な eric6-6.1.2 をインストールしようとしています。

Python 3.4.3+ に sip をインストールするにはどうすればよいですか?

0 投票する
2 に答える
516 参照

python - PyQt4.QtCore のインポート フック

この SO questionとやや似たアプローチで、を介していくつかのインポートフックをセットアップしようとしています。このために、上記のリンクで説明されているように、 2 つの関数を定義する必要があります。ここに私の機能があります、sys.meta_pathfind_moduleload_moduleload_module

PyQt4.QtCoreこれはほとんどのモジュールで問題なく動作しますが、Python 2.7 を使用している場合は失敗します:

返す、

同じコードが Python 3.4 でも問題なく動作します (ただしimp、非推奨になりつつあり、importlib代わりに使用するのが理想的です)。

これは、SIP 動的モジュールの初期化と関係があると思います。Python 2.7 で試してみるべきことは他にありますか?

注: これはPyQt4との両方に適用されますPyQt5

編集:これは実際にこの質問に関連している可能性があります。

同じエラーで失敗します。それでも、それを回避する方法が何であるかはわかりません...

Edit2 : @Nikitaの具体的な使用例の要求に従って、私がやろうとしているのはインポートをリダイレクトするimport Aことですimport Bfind_spec/find_moduleこのためには、モジュールの名前を変更してからデフォルトを使用するだけで十分であると実際に考えることができますload_module。ただし、Python 2 のデフォルトの実装がどこにあるのかは不明です。load_module似たようなもので私が見つけた最も近い実装はfuture.standard_library.RenameImport. importlibPython 3 から 2 への完全な実装のバックポートがあるようには見えません。

この問題を再現するインポート フックの最小限の実例は、この要点にあります。

0 投票する
1 に答える
391 参照

python - Ubuntu で PyQt4.QtDeclarative または PyQt4.Qt をインポートすると Python 2.7 がクラッシュする

しばらく前 (数か月?) に、プログラムrqt_plotが起動時にクラッシュし始めました (SIGSEGV)。私はついにそれをもう少し深く追跡し、Pythonがインポートしようとしているときに問題が発生することを発見しましたPyQt4.QtDeclarative. 残念ながら、これがいつから始まったのか覚えていません。また、インターネットで検索しても何も見つかりませんでした。何がうまくいかないのですか?途中で互換性のないパッケージの更新が行われたと思われますが、根本的な原因を見つける方法がわかりません。

簡単なセッション トランスクリプトを次に示します。

システム情報は次のとおりです。

ファローアップ:

後で、同じ問題(セグメンテーション違反)が発生したこともわかりましたimport PyQt4.Qt

0 投票する
1 に答える
611 参照

python - 「make」コマンドを実行するときに、sip-4.18.1 の Python.h へのパスを指定できますか?

で設定しようとしていsip-4.18.1ますRHEL 7。私は持っていdownloaded/installed/configured Python3.5.2ます。

sip ディレクトリ内で「make」を実行すると、次のエラーが発生します。

gcc -c -pipe -fPIC -O2 -Wall -W -DNDEBUG -I. -I/usr/include/python2.7 -o siplib.o siplib.c siplib.c:20:20: 致命的なエラー: Python.h: そのようなファイルまたはディレクトリはありません #include

Python 2.7これは、少なくともこのマシンにダウンロードされていることを意味すると理解できますが、構成されているようには見えません。

Python.h「make」の実行時に sip が検索するパスを指定する方法はありますか?

0 投票する
0 に答える
8992 参照

gcc - ターゲット 'main.o' のレシピが失敗しました

Windows システムに PyQt をインストールできるように SIP をインストールしようとしています。「 https://riverbankcomputing.com/pipermail/pyqt/20 ​​10-May/026642.html 」というガイドに従っていますが、@ ステップ 8

次のエラーが表示されます。C の経験がほとんどないため、何をすべきかわかりません。調査の結果、この同様のエラーCygwin - Makefile-error: ターゲット `main.o' のレシピが失敗しましたが、解決策がないため、明らかに原因は異なるはずです。私の場合に適用します。

何かご意見は?

0 投票する
2 に答える
111 参照

python-3.x - Python/SIP 仕様ファイル - kwargs と NULL

SIPを掘り始めたところです。次のパブリック メソッドを含む .h ファイルがあります。

対応する .sip ファイルを作成しました。

CMake を使用すると、ビルドが機能し、モジュールを Python にインポートし、コンストラクターを呼び出すことができます (成功は限られています)。Allocate メソッドを呼び出すこともできます。残念ながら、Python 側では、float *devMem=NULLまたはfloat *hostMem=Null引数を公開できません。SIP のドキュメントを読みましたが、欠落している注釈はありません。

最終的な目標は、numpy 配列 (私が信じている .data 属性) をhostMem引数に渡すことです。

SIP でポインタを公開するにはどうすればよいですか? デフォルトの NULL 引数を持つポインターはどうですか?

(Python 3.5、PyQt4、SIP 4.18.x)