构建错误:depfile 有多个输出路径 ninja:构建停止:子命令失败

2024-05-10

我在使用需要 CMake 支持的 JNI 代码构建 Java 项目时遇到此错误。该项目使用Android Studio构建,并得到NDK、CMake和LLVM的支持。这些是 CMake 使用的以下标志。我实际上使用了作为 C++ 项目创建的项目中的 C++ 代码,并将其包含在我的项目中。我想构建链对我来说太复杂了。我从 Ninja 收到此错误。

失败:CMakeFiles/RoyaleCameraJNI.dir/src/main/jni/RoyaleCameraJNI.cpp.o /$HOME/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ --target=aarch64-none-linux-android21 --gcc-toolchain=$HOME/Android/Sdk/ndk -bundle/toolchains/llvm/prebuilt/linux-x86_64 -DRoyaleCameraJNI_EXPORTS -DTARGET_PLATFORM_ANDROID -I../../../../src/main/jniLibs/arm64-v8a/include -Wno-不一致-缺失覆盖-std = gnu ++ 11 -MD -MT -MF -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -无规范前缀-fno-addrsig - Wa,--noexecstack -Wformat -Werror=format-security -stdlib=libc++ -O0 -fPIC -O0 -fno-limit-debug-info -fPIC -std=gnu++11 -MD -MT CMakeFiles/RoyaleCameraJNI.dir/ src/main/jni/RoyaleCameraJNI.cpp.o -MF CMakeFiles/RoyaleCameraJNI.dir/src/main/jni/RoyaleCameraJNI.cpp.o.d -o CMakeFiles/RoyaleCameraJNI.dir/src/main/jni/RoyaleCameraJNI.cpp.o - c ../../../../src/main/jni/RoyaleCameraJNI.cpp depfile有多个输出路径 ninja:构建停止:子命令失败。

请帮忙,如果有任何解决方法...


就我而言,出现此错误消息的原因是因为我的源路径包含%。将它们更改为_解决了我的问题。

就你而言,它看起来更像是在这里讨论 https://gitlab.kitware.com/cmake/cmake/merge_requests/1383

Ninja 规范化 GCC 样式依赖文件的文件路径,无需 查询文件系统。组合符号链接时会中断 带有“..”组件(由 Clang 生成)

不幸的是,没有合并任何更正,但您可以尝试从路径中删除符号链接或“..”。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

构建错误:depfile 有多个输出路径 ninja:构建停止:子命令失败 的相关文章

随机推荐