python:加载共享库时出错:libpython3.4m.so.1.0:无法打开共享目标文件:没有这样的文件或目录

问题描述:

我创建了一个使用virtualenv的python虚拟环境,激活它后,我可以看到Python在哪里安装,python:加载共享库时出错:libpython3.4m.so.1.0:无法打开共享目标文件:没有这样的文件或目录

(virtualenv中测试)的bash-4.1 $ whereis蟒蛇

蟒蛇:/usr/bin/python2.6 /usr/bin/python2.6-config在/ usr/bin中/ Python的 /usr/lib/python2.6 /usr/lib64/python2.6 /usr/X11R6/bin/python2.6 /usr/X11R6/bin/python2.6-config/usr/X11R6/bin/python /usr /bin/X11/python2.6 /usr/bin/X11/python2.6-conf IG 在/ usr/bin中/ X11 /蟒蛇/usr/include/python2.6 /usr/share/man/man1/python.1.gz

(virtualenv中测试)的bash-4.1 $其中蟒蛇

/数据/ virtualenv中测试/斌/ Python的

然而,打字蟒蛇后,我得到了以下错误消息,什么都可以的根本原因?

(virtualenv-test) bash-4.1$ python 
python: error while loading shared libraries: libpython3.4m.so.1.0: cannot open shared object file: No such file or directory 
+0

这可能有帮助。它是一个关于虚拟环境的YouTube教程。我使用Anaconda,它有自己类似的处理方式。 (https://www.youtube.com/watch?v=N5vscPTWKOk) –

1.有人说,这种方式可以解决这个问题(我不知道它是否正常工作,因为我解决这个问题的另一种方式):添加py3.4的lib路径$ PATH环境变量

先找出python3.4的库路径(它安装的文件夹中),像我一样为:/ opt/python361/lib目录,然后将其添加到环境变量: export LD_LIBRARY_PATH = $LD_LIBRARY_PATH:/opt/python361/lib

2.我遇见使用virtualenv与python3.6类似的问题,我修复了以下方法:

  • 首先,编辑sudo vi /etc/ld.so.conf,将python3.x的lib路径添加到这个文件(和我一样是/ opt/python361/lib),并保存这个conf文件的修改;
  • 然后,通过sudo /sbin/ldconfig -v激活此文件。就这样。

export LD_LIBRARY_PATH=[your python path to libpython3.4m.so]

libpython3.4m.so是从中建立了它的Python源下。

将它放入您的.bashrc中,以便在登录时自动进行设置。

我不能在我的机器上强制virtualenv到3.4,但是你可以看到你的virtualenv的lib下只有一串符号链接到你的本地python安装。我想libpython3.4m.so是由其中之一获取的。