首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Appimage问题

Appimage问题
EN

Stack Overflow用户
提问于 2022-01-23 14:40:07
回答 1查看 194关注 0票数 0

我想发布我的程序编写的红宝石语言,我需要打包红宝石,以应用文件,并将它发送到我的客户端ubuntu个人电脑。

所以我创建了“ruby”文件夹,然后将编译好的ruby复制到“ruby/app/ruby”文件夹中,然后创建一个链接,名为"ln -r -s app/ruby/bin/ruby usr/bin/“。在“红宝石-img”文件夹中。

然后创建桌面文件并将png文件放入“ruby”,使用appimagetool创建rubyx86_64.AppImage。遗憾的是,它无法运行,ruby.AppImage仍然使用/app/ ruby /lib文件夹查找一些ruby库,但没有在“ruby/app/ruby/lib”相关文件夹中找到。

因此,我尝试重新编译ruby as --前缀=/tmp/ruby或--前缀=/usr/local/ruby,然后将它们复制到“ruby/usr/local/ruby”或“ruby/tmp/ruby”,然后按上面的方式建立一个链接,并重新安装到AppImage,但ruby.AppImage仍然不能工作.

有什么办法能帮到我吗?

EN

回答 1

Stack Overflow用户

发布于 2022-01-26 19:49:27

AppImages包含一个包含您所提供的所有内容的文件系统,再加上一个小的可执行存根,它将挂载AppImage文件系统,然后运行要在其中找到的AppRun可执行文件。

有了这些知识,在根目录中提供一个可执行文件以及.desktop和图标文件是非常重要的。我建议您不要自己创建AppRun。使用来自https://github.com/AppImage/AppImageKit/releases/tag/continuous的预编译版本(不要忘记将其重命名为“AppRun”)。

现在,当这个AppRun被调用时,它将执行一些检查,cd进入/usr目录,并尝试启动.desktop文件中指定的可执行文件。检查它是源代码,您可以看到它还设置了一些环境变量。

因此,最好将入口点提供为/usr/bin/ruby.sh,并在桌面文件中注册。记住,如果调用/usr/bin/ruby.sh,当前的工作目录是/usr。因此,ruby.sh可以设置更多的环境变量,如LD_LIBRARY_PATH,以便实际加载为/usr/lib配置的库。

我希望你至少和我一样成功。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70823159

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档