【问题标题】:Android NDK clang compiler error showing 'No such file or directory' on WindowsAndroid NDK clang 编译器错误在 Windows 上显示“没有这样的文件或目录”
【发布时间】:2020-02-13 22:15:53
【问题描述】:

我正在尝试学习如何使用 ndk r21 在 android 中使用 c/c++ 本机代码。我将我的 C++ cmake 文件链接到我的 android 项目和生成的 cpp 共享库文件中。但是,我收到如下编译器错误:-

C/C++ 配置问题 十日 |调试 | x86 编译器以错误代码 1 退出:C:\Users\ASUS\AppData\Local\Android\Sdk\ndk\21.0.6113669\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe -xc++ --target=i686 -none-linux-android16 --gcc-toolchain=C:/Users/ASUS/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=C:/Users /ASUS/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot -DTOKA_ARCHIVE_DIR=\"../docs/\" -DTOKA_BASE_DIR=\"../\" -DTOKA_DATABASE_DIR=\"../docs/database/\" -DTOKA_DEVELOPMENT_BUILD -DTOKA_PLUGIN_DIR=\"plugins/Debug/\" -DTOKA_SOURCE -DToka_EXPORTS -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-保护器强 -no-canonical-prefixes -mstackrealign -D_FORTIFY_SOURCE=2 -Wformat -fexceptions -frtti /W3 -O0 -fno-limit-debug-info -fPIC -c -fpch-preprocess -v -dD -E Android (5900059 基于 r365631c) clang 版本 9.0.8 (https://android.googlesource.com/toolchain/llvm-project207d7abc...

这是我可以复制到剪贴板的错误部分。其中一个库的完整错误如下图所示。

Error Message(Cannot Copy it to the clip board)

我尝试在谷歌上搜索类似的错误,但没有找到。有人说这可能是 Windows 上的路径长度问题。我直接在 C:\ 下复制了我的 ndk 以获得最短路径,但无济于事。我遵循了为 android studio here 配置 cmake 和 ndk 的指南,但仍然遇到同样的错误。我安装了更高版本的 cmake,后来我了解到它没有用,因为 ndk 附带了它自己的 cmake 安装。我安装了较旧的 ndk r20 和 r12b,但问题仍然没有消失。事实上,r12b 似乎不支持 cmake。我不知道该怎么办了。我已经尝试解决这个问题 3 天了。似乎这个问题有一个我忽略的明显解决方案。有人可以帮帮我吗。谢谢。

【问题讨论】:

  • 除了单个文件的路径限制外,Windows 对命令的长度也有限制(即上面对 clang++ 的整个调用),我认为是 8192 个字符。
  • 另外,请勿发布错误消息的屏幕截图。将全文放入您的问题中。
  • 谢谢。我无法复制它。它不允许我复制所有内容。
  • 发布来源。没有他们,任何人都很难弄清楚为什么会发生这种情况。

标签: android c++ android-studio cmake android-ndk


【解决方案1】:

对我来说,这是一个空格字符问题。项目文件夹(或项目名称)不应包含任何空格字符。显然有些内部命令行不支持 while 空格,或者缺少一些双引号。

【讨论】:

    猜你喜欢
    • 2012-01-28
    • 1970-01-01
    • 1970-01-01
    • 2015-01-05
    • 2016-05-21
    • 1970-01-01
    • 1970-01-01
    • 2016-06-08
    • 1970-01-01
    相关资源
    最近更新 更多