2011-08-07 10 views
0

私はpython v2.4.3でうまく動作するpython .soファイルを持っていますが、そのライブラリファイルのソースコードはありません。今はPython 2.6.5で動作しません。 .soファイルを開いてPython 2.6.5で再コンパイルすることは可能ですか?私はそれが可能かどうかを知りません、私はちょうど興味があります。ありがとう!Pythonライブラリファイル内にあるものを見つける

私は(Windows上.pyd)の.soファイルは、それがためにコンパイルされていますC言語で書かれたモジュールであり、かつに縛ら

Traceback (most recent call last):

File "run.py", line 1, in

import MarkovPrediction

File "/home/ssubbiah/markov_prediction/vmresource/MarkovPrediction.py", line 7, in

import libmarkov

ImportError: /home/ssubbiah/markov_prediction/vmresource/libmarkov.so: undefined symbol: _ZN5boost6python9converter8registry6insertEPFPvP7_objectEPFvS5_PNS1_30rvalue_from_python_stage1_dataEENS0_9type_infoE

  • Sethu
+0

ソースコードなしではわかりません。どこから手に入れたの? –

+0

これは、マルコフ予測を実行するために長時間維持されたコードです。コードを書いた人が私たちのチームを離れ、ソースコードが失われた:( – sethu

+0

私はそれをインポートできませんでした: – sethu

答えて

0

拡張モジュールはPythonの特定のバージョン用にコンパイルする必要があります。ソースコードがなければ、別のバージョンでは使用できません。

+0

私は両方の答えを受け入れています。私はそれを使用することができないことを知っていました。私にそれをさせるいくつかのコーナーケースまたは小さなハックです! – sethu

0

を取得エラー、特定のバージョンのPython、この場合はPython 2.4.xです。

異なるバージョンのPythonで動作させたい場合は、そのバージョンの元のソースコードを再コンパイルする必要があります。

関連する問題