我想在Linux中通过双击创建一个可运行的.py应用程序。首先,我尝试了一个简单的例子:
#!/usr/bin/env python3
import cv2
img= cv2.imread('/home/andrei/WTZ/code/Computer-Vision-with-Python/DATA/test_image.jpg')
cv2.imshow('It works?', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
它只是打开一个镜像,没什么特别的。我安装了pyinstaller,在终端运行了以下命令:
pyinstaller --onefile --add-data="/home/andrei/WTZ/code/Computer-Vision-with-Python/DATA/test.jpg;/home/andrei/WTZ/code/Computer-Vision-with-Python/DATA/test.jpg" test.py
我遇到了以下错误:
pyinstaller: error: argument --add-data: invalid add_data_or_binary value: '/home/andrei/WTZ/code/Computer-Vision-with-Python/DATA/test.jpg;/home/andrei/WTZ/code/Computer-Vision-with-Python/DATA/test.jpg'
我哪里做错了?
2条答案
按热度按时间5vf7fwbs1#
在我的机器上查过了
并将.PNG文件复制到包含
d.exe
文件的文件夹中名为images
的子目录中。toe950272#
因此,建议的方法是首先创建一个
main.spec
文件-然后你应该得到一个
main.spec
文件,你可以用它来调用pyinstaller
-所以你不需要通过命令行传递所有的资源文件。然后,在您的
main.spec
文件(实际上是python代码)中,应该有类似于假设您的资源位于项目根目录下的
resources
目录中,您可以通过添加一行递归遍历此目录并添加所有文件,将它们全部添加到您的构建中。然后,您的应用应该能够引用这些文件。