&引用;C编译器[…]无法编译简单的测试程序;使用CMake和Android NDK 我目前正在测试Windows上的Android VisualStudio 2017 RC CuStAsvices支持Android NDK C++项目,遇到了一个问题。

&引用;C编译器[…]无法编译简单的测试程序;使用CMake和Android NDK 我目前正在测试Windows上的Android VisualStudio 2017 RC CuStAsvices支持Android NDK C++项目,遇到了一个问题。,c++,android-ndk,cmake,cross-platform,visual-studio-2017,C++,Android Ndk,Cmake,Cross Platform,Visual Studio 2017,当我尝试使用以下内容生成CMake缓存时: <cmake.exe> -G "Visual Studio 15 2017" -DCMAKE_INSTALL_PREFIX:PATH=<install_path> -DCMAKE_TOOLCHAIN_FILE="<androidNDK_path>\build\cmake\android.toolchain.cmake" -DANDROID_TOOLCHAIN=gcc -DANDROID_ABI="armeabi-v7

当我尝试使用以下内容生成CMake缓存时:

<cmake.exe> -G "Visual Studio 15 2017" -DCMAKE_INSTALL_PREFIX:PATH=<install_path> -DCMAKE_TOOLCHAIN_FILE="<androidNDK_path>\build\cmake\android.toolchain.cmake" -DANDROID_TOOLCHAIN=gcc -DANDROID_ABI="armeabi-v7a with NEON" --DCMAKE_BUILD_TYPE="Debug" <source>


我该如何解决这个问题呢?

对于每个找到这篇文章并有相同问题的人来说:问题似乎是Visual Studio生成器。另外,Android工具链似乎需要一个指向“make”路径的参数。为了解决这两个问题,我安装了MSYS()并将CMake命令更改为:

<cmake.exe>  -G "MSYS Makefiles" -DCMAKE_INSTALL_PREFIX:PATH=<install_path> -DCMAKE_TOOLCHAIN_FILE="<androidNDK_path>\build\cmake\android.toolchain.cmake" -DCMAKE_MAKE_PROGRAM="<MinGW_path>\msys\1.0\bin\make.exe" -DANDROID_TOOLCHAIN=gcc -DANDROID_ABI="armeabi-v7a with NEON" --DCMAKE_BUILD_TYPE="Debug" <source>
-G“MSYS Makefiles”-DCMAKE\u INSTALL\u前缀:PATH=-DCMAKE\u TOOLCHAIN\u FILE=“\build\cmake\android.TOOLCHAIN.cmake”-DCMAKE\u MAKE\u PROGRAM=“\MSYS\1.0\bin\MAKE.exe”-DANDROID TOOLCHAIN=gcc-DANDROID ABI=“armeabi-v7a with NEON”-DCMAKE\u build TYPE=“Debug”
C:\Program Files (x86)\Microsoft Visual
Studio\2017\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.Cpp.Platform.targets(57,5):
error MSB4018: The "VCMessage" task failed unexpectedly.
C:\Program Files (x86)\Microsoft Visual
Studio\2017\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.Cpp.Platform.targets(57,5):
error MSB4018: System.FormatException: Index (zero based) must be greater
than or equal to zero and less than the size of the argument list.
<cmake.exe>  -G "MSYS Makefiles" -DCMAKE_INSTALL_PREFIX:PATH=<install_path> -DCMAKE_TOOLCHAIN_FILE="<androidNDK_path>\build\cmake\android.toolchain.cmake" -DCMAKE_MAKE_PROGRAM="<MinGW_path>\msys\1.0\bin\make.exe" -DANDROID_TOOLCHAIN=gcc -DANDROID_ABI="armeabi-v7a with NEON" --DCMAKE_BUILD_TYPE="Debug" <source>