其他分享
首页 > 其他分享> > android – repo:在自动bash脚本中找不到命令来构建cyanogenmod

android – repo:在自动bash脚本中找不到命令来构建cyanogenmod

作者:互联网

我正在运行linux mint 17.2,我已经安装了repo,并且将repo的路径添加到我的.bashrc中.我之前已经发起了我的回购.

我已按照Android Source DownloadingHow to Build CyanogenMod页面上的说明进行操作.

问题是:我编写了一个bash脚本来自动化我想用来启动构建的一些命令.我的脚本以简单的形式如下:

#!/bin/bash
cd ~/Android/Cyanogenmod/cm12_1/android/system
source build/envsetup.sh
repo sync --force-sync -j8
exec $SHELL

当我运行它时,它会报告:

/home/username/Desktop/Cyanogenmod_cm12_1_Grouper_Build : line 4 repo: command not found

如果我将每一行复制并粘贴到一个新的终端实例中(或者只是运行#!/ bin / bash exec $SHELL的脚本来打开一个终端),它就可以完美地运行.

我曾经尝试过的:我曾尝试在repo sync –force-sync -j8之前加入一个睡眠10,但这并没有什么区别.在尝试repo sync -force-sync -j8之前,我还尝试显式启动repo并强制将其添加到我的PATH中,直接用于当前终端会话.该测试的代码如下:

#!/bin/bash
mkdir -p ~/Android/Cyanogenmod/bin
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/Android/Cyanogenmod/bin/repo
chmod a+x ~/Android/Cyanogenmod/bin/repo
cd ~/Android/Cyanogenmod/cm12_1/android/system/
source build/envsetup.sh
PATH=~/Android/Cyanogenmod/bin/repo:$PATH
repo sync --force-sync -j8
exec $SHELL

以下两个问题具有相似的标题,但我的问题也没有,thisthis.

任何帮助或建议都会很棒,谢谢!

解决方法:

总而言之,结果是2个问题.第一个,是我试图在脚本中手动设置路径的解决方案,如PATH =〜/ Android / Cyanogenmod / bin / repo:$PATH应该只是PATH =〜/ Android / Cyanogenmod / bin:$PATH.

第二个也是整体上更大的问题是我的.bashrc中错误添加的PATH变量(回购).通过在我的.profile末尾添加行export PATH = $PATH:$HOME / Android / Cyanogenmod / bin来修复此问题,然后注销/中.

标签:bash,android,shell,cyanogenmod,repo
来源: https://codeday.me/bug/20190711/1432900.html