gpt4 book ai didi

android - Google 删除了 Android 内核的交叉编译器。他们现在在哪里?

转载 作者:行者123 更新时间:2023-12-04 23:50:21 26 4
gpt4 key购买 nike

我用过UBERTC到目前为止预建的交叉编译器,但我在编译 android 内核时遇到错误,而且他们自 2016 年以来就没有更新过他们的东西,所以我只想找到一个替代方案。
显然,谷歌应该拥有它们。但我找不到它们。他们应该是 here ,但 repo 是空的,最后一次提交说:

Remove aarch64-linux-android gcc-4.9 libs and includes

Android has moved to LLVM.

The bins were already removed. Remove everything else except for OWNERS.


所以,我想他们已经把它们搬到了别处。但是哪里?
我不希望听到您需要编译整个 AOSP 树才能使用编译器。我 真的希望有另一种方法。

最佳答案

我找到了旧的工具链。有趣的是:仓库被清理之前的最新提交不包含 gcc 由于某些原因。所以我不得不“爬”上 git 树来找到一个包含它的树。这里是 32-bit ARM toochain64-bit ARM toolchan .它是 gcc 4.9从 2019 年开始。
他们的意思是

Android has moved to LLVM.


是你应该能够用 clang 交叉编译内核吗?和 llvm并且不应再使用他们的独立解决方案。但他们没有提供任何关于如何做到这一点的信息。所以,是的,干得好。
下载看起来像这样:
# clone the repo, it will be empty
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9 toolchain
# go to the repo folder
cd toolchain
# use the hash of the commit to restore the commit which actually contains the toolchain
git checkout e9b2ab0932573a0ca90cad11ab75d9619f19c458
对于像我这样的人来说,还有一些替代工具链,他们还没有完全了解 llvmclang刚刚。 Here is one from arm.com基于 gcc 11.2 .还有 Linaro那些。
无论如何,你有时应该使用旧的工具链来构建旧的内核,因为新的编译器往往会抛出更多的警告, Makefile 会处理这些警告。默认为错误。例如,我不能用 arm.com 的内核编译我的内核,因为它们太聪明了,并且发现了太多的警告,而我还没有找到禁用的方法。修改 Makefile似乎不是一个有效的选项,因为它的长度约为 2k 行。
如果有人知道如何禁用它们,我也很想知道。但现在我将尝试使用旧内核的 google 工具链。
GLHF,哈哈。

关于android - Google 删除了 Android 内核的交叉编译器。他们现在在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71281064/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com