背景:
我想在Windows7上将Obfuscator-llvm-8.0
版的clang和clang ++与AndroidStudio一起使用;
因此我获得了Obfuscator-llvm-8.0
源代码并成功地对其进行了编译,然后将“ clang.exe, clang++.exe, clang-check.exe, clang-format.exe
”放入原始的ndk工具链中,即"xxx\ndk-bundle\toolchains\llvm\prebuilt\windows-x86_64\bin"
;
如果您现在构建apk,则会得到“ Build command failed.
”,因为有些.h
文件也需要复制,所以我复制了它们;
麻烦情况:
再次Build
个APK,将报告错误(请参见下文);
所以我只复制了“ clang ++ complie str”并直接在Windows终端上执行它,它成功执行并生成了.o
文件,
甚至我复制了cmake参数并执行它,我得到了.so
文件;
问题: 我无法在Android Studio IDE上构建它,也无法获取任何详细的错误消息来修复它; 我有什么想念的吗?还是找到有关“忍者:构建停止:子命令失败”的详细消息?
我尝试搜索“忍者:构建停止:子命令失败”。在google上,仅获得有关编译AndroidO的一些信息,并告诉您做一些修复工作,但不告诉您原因。
这是完整的错误消息:
Build command failed.
Error while executing process D:\Android\Sdk\cmake\3.10.2.4988404\bin\cmake.exe with arguments {--build C:\Users\Administrator\AndroidStudioProjects\OllvmTest\app\.externalNativeBuild\cmake\debug\armeabi-v7a --target native-lib}
[1/2] Building CXX object CMakeFiles/native-lib.dir/native-lib.cpp.o
FAILED: CMakeFiles/native-lib.dir/native-lib.cpp.o
D:\Android\Sdk\ndk-bundle\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=armv7-none-linux-androideabi19 --gcc-toolchain=D:/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=D:/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/sysroot -Dnative_lib_EXPORTS -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -fno-addrsig -march=armv7-a -mthumb -Wa,--noexecstack -Wformat -Werror=format-security -O0 -fno-limit-debug-info -fPIC -MD -MT CMakeFiles/native-lib.dir/native-lib.cpp.o -MF CMakeFiles\native-lib.dir\native-lib.cpp.o.d -o CMakeFiles/native-lib.dir/native-lib.cpp.o -c C:/Users/Administrator/AndroidStudioProjects/OllvmTest/app/src/main/cpp/native-lib.cpp
ninja: build stopped: subcommand failed.
答案 0 :(得分:0)
我在Yocto遇到了这个问题。解决方案是减少用于并行构建的线程数。