jkj*_*uio 10 c++ gcc clang clion
我放
set(CMAKE_CXX_COMPILER "/usr/bin/clang.exe")
Run Code Online (Sandbox Code Playgroud)
运行/清洁,运行/构建.
我收到链接错误,如:
undefined reference to `std::ios_base::Init::~Init()'
: undefined reference to `__gxx_personality_v0'
Run Code Online (Sandbox Code Playgroud)
据推测,还有其他变量需要改变.尝试添加-lstdc++
到CMAKE_CXX_FLAGS
,但没有什么不同.
例如,是否存在CLion方式而不是CMake方式?
谢谢.
mar*_*o.m 13
使用CMake指定编译器有点微妙.虽然您使用的方法,在CMakeLists.txt中设置CMAKE_CXX_COMPILER,但它是CMake常见问题解答中最不推荐的方法.
CLion支持CMake FAQ的方法2 :-D
在cmake调用中使用.在CMakeLists.txt中设置变量无效.
在Mac上,转到 Preferences
在Linux/Windows上,转到 File | Settings
然后Build, Execution, Deployment | CMake | CMake options
输入文字:
-D CMAKE_C_COMPILER=/path/to/c_compiler
-D CMAKE_CXX_COMPILER=/path/to/c++_compiler
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅CLion FAQ.
另请注意,当您更改编译器时,您必须使CLion cmake缓存无效并重新启动,请参阅我的答案如何在Clion中清除CMake缓存?.
编辑
在我写完这个答案后,CLion添加了对多个构建目录的支持,正如@rubenvb在评论中指出的那样.这是另一条调查途径.
归档时间: |
|
查看次数: |
17309 次 |
最近记录: |