使用源代码的方式安装Python2.7之后,在import某些库时抛出了如下异常:
ImportError: libpython2.7.so.1.0: cannot open shared object file: No such file or directory
一 原因分析
由于在系统的lib路径中找不到这个共享库。
注: 如果编译时加上了--enable-shared,才会编译这个共享库,默认的位置是python可执行程序所在目录的lib目录下,如/usr/local/python27
二 解决方法
1. 可以使用如下方式编译Python以解决这个问题:
./configure --enable-shared --prefix=/usr/local/python27
make && make install
/usr/local/lib
/usr/local/lib
ln -s libpython2.7.so.1.0 libpython2.7.so
3. 使用命令whereis libpython2.7.so.1.0得到如下结果就说明
libpython2.7.so.1: /usr/local/lib/libpython2.7.so.1.0
4. 如果whereis没有结果,或者还有import错误,可以尝试如下操作:
在/etc/ld.so.conf中加入新行/usr/local/lib
保存后,运行
/sbin/ldconfig
/sbin/ldconfig –v
--end