Android Studio CMake错误(clang.exe损坏)

时间:2018-05-19 02:06:27

标签: android android-studio cmake android-ndk

当我在Android Studio中打开一个支持C ++的新项目时,它只输出" Hello C ++",而且我没有修改任何代码。我试图更改Android Studio和SDK的版本。但它总是显示相同的错误。

我的开发平台:Windows 10

现在版本:Android Studio 3.1.2

非常感谢

构建时出错:

Build command failed.


Error while executing process C:\Users\15829\AppData\Local\Android\Sdk\cmake\3.6.4111459\bin\cmake.exe with arguments {-HC:\Users\15829\AndroidStudioProjects\MyApplication\app -BC:\Users\15829\AndroidStudioProjects\MyApplication\app\.externalNativeBuild\cmake\debug\armeabi-v7a -DANDROID_ABI=armeabi-v7a -DANDROID_PLATFORM=android-15 -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:\Users\15829\AndroidStudioProjects\MyApplication\app\build\intermediates\cmake\debug\obj\armeabi-v7a -DCMAKE_BUILD_TYPE=Debug -DANDROID_NDK=C:\Users\15829\AppData\Local\Android\Sdk\ndk-bundle -DCMAKE_CXX_FLAGS= -DCMAKE_TOOLCHAIN_FILE=C:\Users\15829\AppData\Local\Android\Sdk\ndk-bundle\build\cmake\android.toolchain.cmake -DCMAKE_MAKE_PROGRAM=C:\Users\15829\AppData\Local\Android\Sdk\cmake\3.6.4111459\bin\ninja.exe -GAndroid Gradle - Ninja}


-- Check for working C compiler: C:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe


-- Check for working C compiler: C:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe -- broken


/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe"   is not able to compile a simple test program. 
Open File


  It fails with the following output:


   Change Dir: C:/Users/15829/AndroidStudioProjects/MyApplication/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/CMakeTmp


  Run Build


  Command:"C:\Users\15829\AppData\Local\Android\Sdk\cmake\3.6.4111459\bin\ninja.exe"


  "cmTC_a2146"


  [1/2] Building C object CMakeFiles/cmTC_a2146.dir/testCCompiler.c.o


  [2/2] Linking C executable cmTC_a2146


  FAILED: cmd.exe /C "cd .  &&


  C:\Users\15829\AppData\Local\Android\Sdk\ndk-bundle\toolchains\llvm\prebuilt\windows-x86_64\bin\clang.exe


  --target=armv7-none-linux-androideabi


  --gcc-toolchain=C:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64


  --sysroot=C:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/sysroot


  -isystem


  C:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/sysroot/usr/include/arm-linux-androideabi


  -D__ANDROID_API__=15 -g -DANDROID -ffunction-sections -funwind-tables


  -fstack-protector-strong -no-canonical-prefixes -march=armv7-a


  -mfloat-abi=softfp -mfpu=vfpv3-d16 -mthumb -Wa,--noexecstack -Wformat


  -Werror=format-security -Wl,--exclude-libs,libgcc.a


  -Wl,--exclude-libs,libatomic.a -nostdlib++ --sysroot


  C:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/platforms/android-15/arch-arm


  -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings


  -Wl,--fix-cortex-a8 -Wl,--exclude-libs,libunwind.a


  -LC:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a


  -Wl,--no-undefined -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro


  -Wl,-z,now -Wl,--gc-sections -Wl,-z,nocopyreloc


  CMakeFiles/cmTC_a2146.dir/testCCompiler.c.o -o cmTC_a2146 -latomic -lm &&


  cd ."


error: no such file or directory:


  'CMakeFiles/cmTC_a2146.dir/testCCompiler.c.o'



  ninja: build stopped: subcommand failed.


  CMake will not be able to correctly generate this project.


Call Stack (most recent call first):


  CMakeLists.txt


-- Configuring incomplete, errors occurred!


See also "C:/Users/15829/AndroidStudioProjects/MyApplication/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/CMakeOutput.log".


See also "C:/Users/15829/AndroidStudioProjects/MyApplication/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/CMakeError.log".


Build command failed.


Error while executing process C:\Users\15829\AppData\Local\Android\Sdk\cmake\3.6.4111459\bin\cmake.exe with arguments {-HC:\Users\15829\AndroidStudioProjects\MyApplication\app -BC:\Users\15829\AndroidStudioProjects\MyApplication\app\.externalNativeBuild\cmake\release\armeabi-v7a -DANDROID_ABI=armeabi-v7a -DANDROID_PLATFORM=android-15 -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:\Users\15829\AndroidStudioProjects\MyApplication\app\build\intermediates\cmake\release\obj\armeabi-v7a -DCMAKE_BUILD_TYPE=Release -DANDROID_NDK=C:\Users\15829\AppData\Local\Android\Sdk\ndk-bundle -DCMAKE_CXX_FLAGS= -DCMAKE_TOOLCHAIN_FILE=C:\Users\15829\AppData\Local\Android\Sdk\ndk-bundle\build\cmake\android.toolchain.cmake -DCMAKE_MAKE_PROGRAM=C:\Users\15829\AppData\Local\Android\Sdk\cmake\3.6.4111459\bin\ninja.exe -GAndroid Gradle - Ninja}


-- Check for working C compiler: C:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe


-- Check for working C compiler: C:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe -- broken


/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe"   is not able to compile a simple test program. 
Open File


  It fails with the following output:


   Change Dir: C:/Users/15829/AndroidStudioProjects/MyApplication/app/.externalNativeBuild/cmake/release/armeabi-v7a/CMakeFiles/CMakeTmp


  Run Build


  Command:"C:\Users\15829\AppData\Local\Android\Sdk\cmake\3.6.4111459\bin\ninja.exe"


  "cmTC_e2e33"


  [1/2] Building C object CMakeFiles/cmTC_e2e33.dir/testCCompiler.c.o


  [2/2] Linking C executable cmTC_e2e33


  FAILED: cmd.exe /C "cd .  &&


  C:\Users\15829\AppData\Local\Android\Sdk\ndk-bundle\toolchains\llvm\prebuilt\windows-x86_64\bin\clang.exe


  --target=armv7-none-linux-androideabi


  --gcc-toolchain=C:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64


  --sysroot=C:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/sysroot


  -isystem


  C:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/sysroot/usr/include/arm-linux-androideabi


  -D__ANDROID_API__=15 -g -DANDROID -ffunction-sections -funwind-tables


  -fstack-protector-strong -no-canonical-prefixes -march=armv7-a


  -mfloat-abi=softfp -mfpu=vfpv3-d16 -mthumb -Wa,--noexecstack -Wformat


  -Werror=format-security -Wl,--exclude-libs,libgcc.a


  -Wl,--exclude-libs,libatomic.a -nostdlib++ --sysroot


  C:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/platforms/android-15/arch-arm


  -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings


  -Wl,--fix-cortex-a8 -Wl,--exclude-libs,libunwind.a


  -LC:/Users/15829/AppData/Local/Android/Sdk/ndk-bundle/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a


  -Wl,--no-undefined -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro


  -Wl,-z,now -Wl,--gc-sections -Wl,-z,nocopyreloc


  CMakeFiles/cmTC_e2e33.dir/testCCompiler.c.o -o cmTC_e2e33 -latomic -lm &&


  cd ."


error: no such file or directory:


  'CMakeFiles/cmTC_e2e33.dir/testCCompiler.c.o'



  ninja: build stopped: subcommand failed.


  CMake will not be able to correctly generate this project.


Call Stack (most recent call first):


  CMakeLists.txt


-- Configuring incomplete, errors occurred!


See also "C:/Users/15829/AndroidStudioProjects/MyApplication/app/.externalNativeBuild/cmake/release/armeabi-v7a/CMakeFiles/CMakeOutput.log".


See also "C:/Users/15829/AndroidStudioProjects/MyApplication/app/.externalNativeBuild/cmake/release/armeabi-v7a/CMakeFiles/CMakeError.log".

1 个答案:

答案 0 :(得分:0)

尝试将此添加到build.gradle:



externalNativeBuild {
            cmake {
                arguments '-DANDROID_TOOLCHAIN=clang' --> gcc
            }
        }