android - Android NDK clang 编译器错误在 Windows 上显示“没有这样的文件或目录”
问题描述
我正在尝试学习如何使用 ndk r21 将 c/c++ 本机代码与 android 一起使用。我将我的 C++ cmake 文件链接到我的 android 项目和生成的 cpp 共享库文件中。但是,我收到如下编译器错误:-
C/C++ 配置问题 Toka | 调试 | 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:/用户/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/\"https://android.googlesource.com/toolchain/llvm-project 207d7abc...
这是我可以复制到剪贴板的部分错误。其中一个库的完整错误如下图所示。
我尝试在谷歌上搜索类似的错误,但没有找到。有人说这可能是 Windows 上的路径长度问题。我直接在 C:\ 下复制了我的 ndk 以获得最短路径,但无济于事。我按照此处为 android studio 配置 cmake 和 ndk 的指南进行操作,但仍然遇到相同的错误。我安装了更高版本的 cmake,后来我了解到它没有用,因为 ndk 附带了它自己的 cmake 安装。我安装了较旧的 ndk r20 和 r12b,但问题仍然没有消失。事实上,r12b 似乎不支持 cmake。我不知道该怎么办了。我已经尝试解决这个问题 3 天了。似乎这个问题有一个我忽略的明显解决方案。有人可以帮帮我吗。谢谢。
解决方案
对我来说,这是一个空格字符问题。项目文件夹(或项目名称)不应包含任何空格字符。显然某些内部命令行不支持 while 空格,或者缺少某些双引号。
推荐阅读
- python - 在python中使用for和if循环实现匹配条件
- wso2 - 用户在计费引擎中注册后的回调(WSO2 Api Manager)
- arrays - 数组公式仅适用于第一个单元格
- sql-server - sqlcmd 适用于 CMD 而不是 bash
- apache-spark - 为什么在增加 memoryOverhead 后收集大型数据集会成功
- firebase - signInAnonymously 是否将记录添加到您的用户集合中?
- javascript - 有没有办法让我从我用 JavaScript 制作的兴趣计算器中获取用户输入并将其自动添加到我的 chartjs 数据集中?
- javascript - Javascript 办公室添加:getAsync() 不起作用
- c# - 在 UWP 右下角添加“调整大小手柄”
- visual-studio-2017 - VS2017 消息:发布到选定的天蓝色虚拟机尚未启用