2015-12-02 152 views
1

我刚刚创建了一个虚拟机流浪汉在CentOS,安装python2.7和使用Miniconda点子,使用PIP安装pymqi,创建了一个测试Python文件看如果我的pymqi安装是否正确:libmqic_r.so:无法打开共享对象文件:没有这样的文件或目录,蟒蛇

import pymqi 
print "hello..." 

,但我得到这个:

[[email protected] projects]$ python test.py 
Traceback (most recent call last): 
File "test.py", line 1, in <module> 
import pymqi 
File "/home/vagrant/miniconda2/lib/python2.7/site-packages/pymqi/__init__.py", line 109, in <module> 
import pymqe, CMQC, CMQCFC, CMQXC 
ImportError: libmqic_r.so: cannot open shared object file: No such file or directory 

我看了这个文件:

[[email protected] projects]$ find /opt/mqm/ -name 'libmqic_r.so' 
/opt/mqm/lib/compat/libmqic_r.so 
/opt/mqm/lib/libmqic_r.so 
/opt/mqm/lib64/compat/libmqic_r.so 
/opt/mqm/lib64/libmqic_r.so 

谢谢,你的帮助表示感谢。

回答

1

我找到了解决办法:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/mqm/lib64 
0

作为一般规则,使用LD_LIBRARY_PATH变量是一个不好的做法。你最好创建适当的符号链接到64位版本的共享对象。

对于FOME原因,当您安装IBM MQSeries客户,只有32位MQ库链接到/ usr/lib中/:

[[email protected] ~]# ll /usr/lib/libmq* 
lrwxrwxrwx 1 root root 26 Jan 25 12:49 /usr/lib/libmqicb_r.so -> /opt/mqm/lib/libmqicb_r.so 
lrwxrwxrwx 1 root root 24 Jan 25 12:49 /usr/lib/libmqicb.so -> /opt/mqm/lib/libmqicb.so 
lrwxrwxrwx 1 root root 25 Jan 25 12:49 /usr/lib/libmqic_r.so -> /opt/mqm/lib/libmqic_r.so 
lrwxrwxrwx 1 root root 23 Jan 25 12:49 /usr/lib/libmqic.so -> /opt/mqm/lib/libmqic.so 
lrwxrwxrwx 1 root root 25 Jan 25 12:49 /usr/lib/libmqiz_r.so -> /opt/mqm/lib/libmqiz_r.so 
lrwxrwxrwx 1 root root 23 Jan 25 12:49 /usr/lib/libmqiz.so -> /opt/mqm/lib/libmqiz.so 
lrwxrwxrwx 1 root root 25 Jan 25 12:49 /usr/lib/libmqjx_r.so -> /opt/mqm/lib/libmqjx_r.so 
lrwxrwxrwx 1 root root 26 Jan 25 12:49 /usr/lib/libmqmcs_r.so -> /opt/mqm/lib/libmqmcs_r.so 
lrwxrwxrwx 1 root root 24 Jan 25 12:49 /usr/lib/libmqmcs.so -> /opt/mqm/lib/libmqmcs.so 
lrwxrwxrwx 1 root root 25 Jan 25 12:49 /usr/lib/libmqmzse.so -> /opt/mqm/lib/libmqmzse.so 

虽然64位的库都没有:

[[email protected] ~]# ll /usr/lib64/libmq* 
ls: /usr/lib64/libmq*: No such file or directory 

你可以通过执行即可修复

[[email protected] ~]# ln -s /opt/mqm/lib64/libmq* /usr/lib64/ 
相关问题