gpt4 book ai didi

compiler-errors - NDK 静态库项目无法为 arm64-v8a 编译

转载 作者:行者123 更新时间:2023-12-02 10:56:08 25 4
gpt4 key购买 nike

我正在尝试使用 android-ndk-r13b 构建一个静态库(cocos2d)。
我有用于静态库项目的 Android.mk 并指定

APP_ABI := armeabi armeabi-v7a arm64-v8a
目标架构列表。问题是 arm64-v8a 无法在最后一步(链接)上构建。
make 产生以下输出:
collect2: fatal error: cannot find 'ld'
compilation terminated.
我不明白,怎么了。这个实用程序是肯定存在的。我可以从终端运行它。
ld -v
@(#)PROGRAM:ld PROJECT:ld64-253.3
configured to support archs: i386 x86_64 x86_64h armv6 armv7 armv7s armv7m armv7k arm64 (tvOS)
LTO support using: LLVM version 3.7.1
它声明支持 arm64。
我不明白我现在应该挖哪个方向。 armeabi armeabi-v7a编译得很好,毕竟我得到了两个 .so 文件。

最佳答案

好的,看起来我已经找到了解决方案,或者我相信的解决方法。
我完全控制了 make 运行的 ndk-build。并添加了 NDK_LOG=1 标志。它给了我一个线索。链接器试图从~/Library/android/ndk/android-ndk-r13b/toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64/aarch64-linux-android/bin/这是 nkd-build 试图找到 ld 的路径可执行。我没找到ld本身在此目录中,但有 ld.bfdld.gold可执行文件(我相信它们是特定于 linux 平台的)。所以我刚刚创建了一个符号链接(symbolic link) ld ~> ld.gold之后构建成功完成。

关于compiler-errors - NDK 静态库项目无法为 arm64-v8a 编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63963930/

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