我有一个脚本,我使用 将其合并到一个文件中pyinstaller
。对于这种情况,让我们用一个更简单的例子来做,因为错误也发生了:
你好世界.py
#!/bin/bash
print "Hello World!"
通过运行pyinstaller --onefile helloworld.py
,它会创建dist
包含可执行文件的文件夹(helloworld
)。
我可以通过键入在终端上正确运行此文件./helloworld
,但如果 make双击, 或者右击 > 运行。
在您询问之前,是的,在文件的属性中Allow executing file as program
已经选中了该选项。
另外,在 Nautilus 中,编辑 > 首选项 > 行为Ask each time
,我已经选择了可执行文本文件的选项。
我知道关于同一件事情有很多疑问,但我已经尝试了所有方法,但仍然无法解决问题。有人知道发生了什么吗?提前谢谢。
答案1
实际上,该文件已执行,但从 Nautilus 运行程序不会在终端中打开它。运行软件的最佳方法是在/usr/share/applications
或内创建一个 shell 桌面条目~/.local/share/applications
。桌面可以命名为 helloworld.desktop 之类的名称,并应包含以下示例:
[Desktop Entry]
# The type as listed above
Type=Application
# The version of the desktop entry specification to which this file complies
Version=1.0
# The name of the application
Name=HelloWorld
# A comment which can/will be used as a tooltip
Comment=This is just a sample
# The path to the folder in which the executable is run
Path=/opt/helloworld/
# The executable of the application, possibly with arguments.
Exec=/opt/helloworld/helloworld
# The name of the icon that will be used to display this entry
Icon=/path/to/an/icon.svg
# Describes whether this application needs to be run in a terminal or not
Terminal=true
# Describes the categories in which this entry should be shown
Categories=Misc;Languages;Python;