2012-08-29 66 views
-1

我想通過swig從python接口到C++代碼。 我試圖執行我的腳本時出現以下錯誤。python swig:ImportError錯誤的ELF類:ELFCLASS64

File "./driver.py", line 4, in <module> 
    from fixMessageSim import * 
File "/var/user/pradyotd/testframework/fixMessageSim.py", line 12, in <module> 
    import MessageFactory 
File "/var/user/pradyotd/testframework/MessageFactory.py", line 25, in <module> 
    _MessageFactory = swig_import_helper() 
File "/var/user/pradyotd/testframework/MessageFactory.py", line 21, in swig_import_helper 
    _mod = imp.load_module('_MessageFactory', fp, pathname, description) 
ImportError: /var/user/pradyotd/testframework/_MessageFactory.so: wrong ELF class: ELFCLASS64` 

當我運行的.so文件,我得到

_MessageFactory.so: ELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, not stripped 

同樣,對於蟒蛇

/usr/bin/python: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped 

所以我不明白爲什麼64位。所以會抱怨。

感謝

+3

你確定這是你正在使用的解釋器嗎?確保打印'sys.executable'。 –

+0

是的。我確定。那是解釋被使用。我打印sys.executable,並確認相同。 – Pradyot

+0

我無法重現您所看到的文件,而無需轉換文件以意外使用不同的解釋器或類似文件。 – Flexo

回答

0

這樣看來,我認爲我用的是翻譯,不是一個在文件中。 這看起來不是問題。

相關問題