unity3d Unity 2018.3,升级到 Catalina 后,在Android(ndk n16b)上编译il2cpp期间链接器崩溃

jobtbby3  于 2022-11-16  发布在  Android
关注(0)|答案(2)|浏览(118)

升级到macOS Catalina 后,我的Unity 2018.3无法使用il 2cpp为Android编译。
该错误似乎发生在链接过程中。
输出如下:

/Users/myuser/Applications/android-ndk-r16b/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang++ @"/var/folders/vq/04653nwj79jdpld6_lndr1lw0000gn/T/tmpXtN5uB.tmp" -o "/Users/myuser/Documents/Unity/MyProject/Library/il2cpp_android_arm64-v8a/il2cpp_cache/linkresult_44B2FEF258539B2B7FE0DE0B1C88B423/libil2cpp.so" -shared -Wl,-soname,libil2cpp.so -Wl,--no-undefined -Wl,-z,noexecstack -Wl,--gc-sections -Wl,--build-id --sysroot "/Users/myuser/Applications/android-ndk-r16b/platforms/android-21/arch-arm64" -gcc-toolchain "/Users/myuser/Applications/android-ndk-r16b/toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64" -target aarch64-none-linux-android -Wl,--wrap,sigaction -L "/Users/myuser/Applications/android-ndk-r16b/sources/cxx-stl/gnu-libstdc++/4.9/libs/arm64-v8a" -lgnustl_static -llog -Xlinker -Map="/Users/myuser/Documents/Unity/MyProject/Library/il2cpp_android_arm64-v8a/il2cpp_cache/linkresult_44B2FEF258539B2B7FE0DE0B1C88B423/libil2cpp.map" -rdynamic -fuse-ld=bfd
clang++: error: invalid linker name in argument '-fuse-ld=bfd'

看起来NDK中没有darwin-x86_64的链接器ld-bfd:(
你知道怎么修吗?

0yg35tkg

0yg35tkg1#

我找到了一个(非常糟糕的)变通办法,这个办法......有效。
导航到您的NDK文件夹,然后:
cd toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64/aarch64-linux-android/bin
现在,将gold连接器复制为bfd
cp ld.gold ld.bfd
不确定它是否有任何副作用,但是,好吧...它编译!

tnkciper

tnkciper2#

将文件/构建设置/播放器设置中的API兼容性级别更改为.NET标准2.0为我解决了这个问题。

相关问题