我正在尝试使用 PyInstaller 为我的 Python 应用程序创建可执行文件。创建可执行文件时没有错误,但是当我随后尝试运行它时,出现以下错误:
[6439] Error loading Python lib '~/PycharmProjects/CetPar/ceteris_paribus/control/build/controller/libpython3.5m.so.1.0': dlopen: ~/PycharmProjects/CetPar/ceteris_paribus/control/build/controller/libpython3.5m.so.1.0: cannot open shared object file: No such file or directory
我已经尝试导出多个版本的
LD_LIBRARY_PATH
变量,但这似乎没有任何效果。尝试通过运行 locate libpython3.5m.so.1.0
命令查找共享对象会产生 /usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0
,但将 /usr/lib/
添加到 LD_LIBRARY_PATH
路径不起作用。我怀疑这与我的Python解释器的安装位置有关,但我一直找不到任何东西。此外,我注意到 PyInstaller 还创建了一个 /dist/
目录,可以在此处找到共享对象文件。
我正在运行Elementary OS 0.4.1 Loki
有人对我仍然可以尝试的事情有什么建议吗?
运行pyinstaller后,项目文件夹中应该有两个文件夹
dist
和build
。将 dist/controller
内容复制到 build/controller
目录:
cp -r ./dist/controller/* build/controller
使用 pyinstaller 时,请确保使用标志 -F 使其成为独立的可执行文件
pyinstaller -F main.py
然后,构建完成后,您将在 dist 目录(而不是构建目录)中找到独立的可执行文件