我有一个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
答案 0 :(得分:0)
.so文件(Windows上的.pyd)是一个用C语言编写的模块。它是为特定版本的Python编译并绑定的,在本例中是Python 2.4.x.
如果您希望它与不同版本的Python一起使用,则需要重新编译该版本的原始源代码。
答案 1 :(得分:0)
需要针对特定版本的Python编译扩展模块。没有源代码,不,你不能将它用于不同的版本。