本文转载自 deepin论坛-玲珑专区-原文链接 作者:deepin-superuser
在打包的时候难免会遇到一些奇奇怪怪的错误,这里分享一下打包报 start.sh:行2: ./xxx: No such file or directory
的解决方案
前置条件
安装了最新版本的 linglong-pica 1.1.1-1 并且使用 auto_convert_1.1.1.sh
错误情况
目前这个报错在我这里有两类,一类报错 xxx.sh
找不到,另一类报 env
找不到
/opt/apps/com.syntevo.deepgit.linyaps/files/bin/start.sh:行2: ./deepgit.sh
: No such file or directory
/opt/apps/com.github.mdllife.mdl.linyaps/files/bin/start.sh:行2: ./env
: No such file or directory
解决方法
情况1
解决方法很简单,先定位到 程序目录
,例如我这里就是 /home/cloud/Desktop/ll-build/linglong-build/com.syntevo.deepgit/package/com.syntevo.deepgit.linyaps
这里
/home/cloud/Desktop/ll-build
是我指定的打包目录 后边linglong-build/com.syntevo.deepgit/package/com.syntevo.deepgit.linyaps
是脚本自动生成的
然后 使用文本编辑器打开 linglong.yaml
拉到最下边,找到报错语句位置
然后将这里修改为正确的位置
第一种情况我们找 xxx.sh
这个文件,例如我这里就是 deepgit.sh
, 先定位到 程序目录/package/程序包名/linglong/output/runtime/files
,然后开始寻找 deepgit.sh
文件
这里我们找到在 deepgit/bin
目录下
所以我们修改 linglong.yaml
然后在 程序目录打开终端 执行以下命令
ll-builder build
ll-builder export
ll-builder run
确认运行没问题的话就可以提交程序目录下的 xxx.runtime.layer
文件了,
情况2
情况2中报错为 ./env
,但实际上没有这个文件,这里我们要找的是 AppRun
,这个文件,这里贴一个 linglong.yaml
前后对比
一般都在 程序名 或 squashfs-root 目录中
其他步骤和情况1中一样
快来看看这么操作以后有几个可以变成成功吧
发表回复