找出python库文件中的内容

时间:2011-08-07 00:39:44

标签: python linux

我有一个python .so文件可以正常使用python v2.4.3,但我没有该库文件的源代码。现在它无法在python 2.6.5中工作。是否可以打开.so文件并在python 2.6.5中重新编译?我不知道是否有可能,我只是好奇。谢谢 !

我得到的错误

  

追踪(最近一次呼叫最后一次):

     

文件“run.py”,第1行,

     

导入MarkovPrediction

     

文件“/home/ssubbiah/markov_prediction/vmresource/MarkovPrediction.py”,第7行,

     

导入libmarkov

     

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

  • Sethu

2 个答案:

答案 0 :(得分:0)

.so文件(Windows上的.pyd)是一个用C语言编写的模块。它是为特定版本的Python编译并绑定的,在本例中是Python 2.4.x.

如果您希望它与不同版本的Python一起使用,则需要重新编译该版本的原始源代码。

答案 1 :(得分:0)

需要针对特定​​版本的Python编译扩展模块。没有源代码,不,你不能将它用于不同的版本。