随着CentOS的没落,使用ubuntu的越来越多,而且国外貌似也比较流行使用ubuntu,像LLVM/Clang就有专门针对ubuntu编译二进制发布文件:
ubuntu本身也可以直接通过apt install命令来安装编译好的clang编译器。不过目前22.04版本下最高可安装版本还是停留在LLVM 15。
在LLVM 15中使用Clang编译器时,如果想要使用libc++库时,需要使用下面的命令进行安装:
sudo apt install libc++-15-dev
sudo ldconfig
安装好后,可以在CMakeLists.txt中add_executable
后面添加:
if (CMAKE_CXX_COMPILER MATCHES "clang")
target_compile_options(${PROJECT_NAME} PRIVATE -stdlib=libc++)
target_link_libraries(${PROJECT_NAME} PRIVATE c++)
endif()
来启用libc++
。
笔者在使用时报错:
查看/usr/lib/x86_64-linux-gnu
目录:
未发现有libc++abi.so
,只有libc++abi.so.1
和libc++abi.so.1.0
,这应该是ubuntu官方构建的一个BUG,需要手动创建一个符号链接即可:
/usr/lib/x86_64-linux-gnu$ sudo ln -s libc++abi.so.1 libc++abi.so