如何设置CMAKE_C_COMPILER和CMAKE_CXX_COMPILER建设Assimp为iO

2019-06-26 10:49发布

当我尝试通过运行构建Assimp build_ios.sh ,它告诉我:

CMake Error: your C compiler: "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/llvm-gcc" was not found.   Please set CMAKE_C_COMPILER to a valid compiler path or name.
CMake Error: your CXX compiler: "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/llvm-g++" was not found.   Please set CMAKE_CXX_COMPILER to a valid compiler path or name.

我需要的路径是是:

/Applications/XCode.app/Contents/Developer/Platforms/...

我试着改变DEVROOTbuild_ios.shIPHONE_xxxx_TOOLCHAIN.cmake ,因为那是什么CMAKE_C_COMPILER等似乎得到从产生,但它仍然给了我同样的错误。

Answer 1:

选项1:

您可以在类似这样的命令行设置的CMake变量:

cmake -D CMAKE_C_COMPILER="/path/to/your/c/compiler/executable" -D CMAKE_CXX_COMPILER "/path/to/your/cpp/compiler/executable" /path/to/directory/containing/CMakeLists.txt

见这个学习如何创建CMake的缓存条目。


选项2:

在你的shell脚本build_ios.sh你可以设置环境变量CCCXX分别指向C和C ++编译器可执行文件,例如:

export CC=/path/to/your/c/compiler/executable
export CXX=/path/to/your/cpp/compiler/executable
cmake /path/to/directory/containing/CMakeLists.txt

方案3:

编辑的“Assimp”的文件的CMakeLists.txt:顶部添加这些行(使用前必须添加project()enable_language()命令)

set(CMAKE_C_COMPILER "/path/to/your/c/compiler/executable")
set(CMAKE_CXX_COMPILER "/path/to/your/cpp/compiler/executable")

见这对了解如何使用set在CMake的命令。 同样这对于理解使用一些常见的CMake变量的一个有用的资源。


下面是官方的FAQ中的相关条目: http://www.cmake.org/Wiki/CMake_FAQ#How_do_I_use_a_different_compiler.3F



Answer 2:

CC和CXX位于内部/Applications/Xcode.app 。 这应该找到合适的路径

export CXX=`xcrun -find c++`
export CC=`xcrun -find cc`


文章来源: How do you set CMAKE_C_COMPILER and CMAKE_CXX_COMPILER for building Assimp for iOS?
标签: ios cmake