首先,為了隔離問題,不要從構建informix的同一目錄或安裝InformixDB的目錄調用python或腳本。相反,從應用程序所在的位置調用它。從那里,看看如果您嘗試“importinformixdb”會發生什么。如果python抱怨找不到“informixdb”(名稱中沒有下劃線),那么您的python路徑就混亂了,您需要修復python路徑以包含informixdb的安裝位置。在
如果python抱怨它不能導入“\u informixdb”(帶下劃線),請驗證_informixdb.so與位于同一位置informixdb.py以及對該文件的權限是否正確。如果是這樣,問題很可能是動態鏈接器找不到Informix客戶機運行時庫。在
要檢查后者是否存在問題,請運行命令“ldd/path/To”/_informixdb.so“看看輸出。應該是這樣的:carsten@haese:~$ ldd /usr/local/lib/python2.7/dist-packages/_informixdb.so
python模塊導入方法,linux-gate.so.1 => (0x00f47000)
libifsql.so => /opt/informix/lib/esql/libifsql.so (0x001d9000)
libifasf.so => /opt/informix/lib/libifasf.so (0x00999000)
libifgen.so => /opt/informix/lib/esql/libifgen.so (0x00110000)
python字符串join用法?libifos.so => /opt/informix/lib/esql/libifos.so (0x0039f000)
libifgls.so => /opt/informix/lib/esql/libifgls.so (0x0061d000)
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0x006c5000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0x00be8000)
不屬于python的特點。libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0x00342000)
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0x001b1000)
libcrypt.so.1 => /lib/i386-linux-gnu/libcrypt.so.1 (0x00220000)
/lib/ld-linux.so.2 (0x0016a000)
python無法導入自己寫的模塊、如果ldd命令指示找不到任何libifXXX庫,這就是您的問題,您需要告訴動態鏈接器Informix庫的位置,例如通過適當地設置LD_LIBRARY_PATH環境變量或將其添加到etc/ld.so.conf公司以某種方式運行ldconfig。在
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态