我在 vMware ESXi 中运行 ubuntu 18.04,并一直在构建内核以在平板电脑上进行测试。到目前为止,我在配置或编译方面没有遇到任何问题。现在,我正在为 Android-x86 设置构建环境。通过安装额外的交叉编译包和依赖项、初始化 repo 并同步它,一切都很顺利。下一步是使用以下命令设置构建环境
. build/envsetup.sh
运行起来似乎很好,并给出了预期的输出。接下来,使用“lunch”设置配置
$ lunch android_x86_64-userdebug
并且运行良好,没有错误,并创建配置。
下一步是运行 make,将输出定向到构建目录并获取配置菜单
make -C kernel O=$OUT/obj/kernel ARCH=x86 menuconfig
事情就在这时候发生了。
Unknown option: -C
从现在开始,除非我使用 sudo 或 su,否则 make 中的任何选项都不起作用。make -v 显示“未知选项”。任何选项(长格式和短格式)都一样。它正在做一些事情,完全破坏用户帐户在没有 sudo 的情况下运行 make 的能力,并且根据所有文档,您不应该以 root 身份运行 make。我现在已经尝试过 2 个系统。在运行 envsetup.sh 脚本之前,两者都能够以普通用户帐户身份运行 make,没有任何问题。之后就不行了。我似乎在任何其他讨论中都找不到类似这样的错误,并且真的需要一些关于如何在没有 root 的情况下再次访问 make 的建议。
[编辑:]经过更多测试,我发现在 android-x86 目录之外运行 make -v 仍然有效,所以目录内部实际上出了问题,但根据文档,我的理解是你应该在 android-x86 目录树的顶部运行构建命令
答案1
尝试一些类似
/usr/bin/make -C kernel O=$OUT/obj/kernel ARCH=x86 menuconfig