如何使 .desktop 文件在 Ubuntu 22.04 上工作,其中可执行文件依赖于文件夹?

如何使 .desktop 文件在 Ubuntu 22.04 上工作,其中可执行文件依赖于文件夹?

我尝试为使用 sdl2 制作的 2D 射击游戏创建一个 .desktop 文件。.desktop 文件如下所示

[Desktop Entry]
Version=1.0
Name=The Hunt For Red October
Comment=2D shooting game
Exec=/home/araf/Projects/The_Hunt_For_Red_October/a.out 
Icon=/home/araf/Pictures/hunt for red october intro.png
Terminal=false
Type=Application
Categories=Utility;Application;

之后我检查了允许将文件作为程序执行&允许启动。但它没有执行,而是弹出一个黑屏并立即消失。后来我弄清楚了这是因为它a.out依赖于/home/araf/Projects/The_Hunt_For_Red_October/assets所有媒体文件所在的文件夹,所以a.out文件终止了。那么,我如何将该文件夹包含在其中并使其工作?

答案1

我解决了这个问题。在看到另一个问题的答案后,我发现我遗漏了一点,那就是我必须在文件夹所在的文件夹中运行可执行文件/home/araf/Projects/The_Hunt_For_Red_October/assets。为此,我只需要添加一行


Path=/home/araf/Projects/The_Hunt_For_Red_October/

在 .desktop 文件中指示文件a.out将运行的文件夹。因为assets文件夹也在同一个文件夹中,所以现在a.out可以从文件夹访问媒体文件assets ,并且文件执行时不会出现错误。

相关内容