提问人:Dan S. 提问时间:9/22/2023 最后编辑:cafce25Dan S. 更新时间:9/22/2023 访问量:43
编译适用于 Android 的 Rust crate tinyaudio 时出现链接错误
Linking error when compiling Rust crate tinyaudio for Android
问:
我正在尝试编译一个使用 Rust crate tinyaudio 的库,但出现链接错误:
ld: error: unable to find library -laaudio
我安装了 Android Studio,并且:
- Android SDK 平台 33
- Android SDK 构建工具 33.0.1
- NDK 22.1(也尝试过 25.2)
- Android SDK 命令行工具(最新)
- Android SDK 平台工具
我设置了环境变量:
[System.Environment]::SetEnvironmentVariable("NDK_HOME", "$env:LocalAppData\Android\Sdk\ndk\22.1.7171670", "User")
[System.Environment]::SetEnvironmentVariable("ANDROID_HOME", "$env:LocalAppData\Android\Sdk", "User")
[System.Environment]::SetEnvironmentVariable("JAVA_HOME", "C:\Program Files\Android\Android Studio\jbr", "User")
然后重新启动系统。
我尝试添加其他变量:并指向与并重新启动的相同路径,但没有结果。ANDROID_NDK_HOME
ANDROID_NDK_ROOT
NDK_HOME
我尝试从 NDK 25.2 更改为 22.1,因为一些用户建议使用较旧的库可以解决一些类似的链接错误。
我尝试重新安装 Android 13.0 SKD 软件包,因为它缺少 Android 33 和 Android 13.0 Platform SDK 33-ext5 的源代码,但没有结果。
我显然错过了一些东西,但我不知道那可能是什么。
它可能必须与 NDK 有关,因为从 25.2 更改为 22.1 会产生另一个错误:
ld: error: unable to find library -laaudio
ld: error: unable to find library -lunwind
我看到在其他一些帖子中被提及,但从 NDK 更改为 NDK 似乎很愚蠢,看看其中一个是否有效。我明天会这样做,但在那之前,我希望有人知道我可以尝试什么。-lunwind
答: 暂无答案
评论