如何使用 clang++/libc++ 编译/链接 Boost?

2023-06-29C/C++开发问题
3

本文介绍了如何使用 clang++/libc++ 编译/链接 Boost?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

这个问题的答案为什么在 c++0x 模式下用 libc++ 不能 clang 链接这个 boost::program_options 示例? 声明您需要使用 clang++ -stdlib=libc++ 重建 boost."

The answer to this question Why can't clang with libc++ in c++0x mode link this boost::program_options example? states "You need to rebuild boost using clang++ -stdlib=libc++."

我使用 MacOS Lion 和 clang v3.0.如何使用 clang 构建 Boost v1.48.0 并将其与 libc++ 链接?

I'm using MacOS Lion with clang v3.0. How do I build Boost v1.48.0 using clang and link it with libc++?

更新:我创建了一个 user-config.jam 文件,内容如下:

Update: I've created a user-config.jam file with the following:

using clang-darwin

...这将使用 clang 而不是 gcc 来构建 Boost.如何链接 libc++ 而不是 libstdc++?

...which will build Boost with clang instead of gcc. How do I link with libc++ instead of libstdc++?

推荐答案

我也不知道该怎么做.但是在这里、入门 和 试验和错误:

I didn't know how to do this either. But after poking around in here, the getting started, and trial and error:

$ ./bootstrap --with-toolset=clang
$ ./b2 clean
$ ./b2 toolset=clang cxxflags="-stdlib=libc++" linkflags="-stdlib=libc++"

您会收到很多警告.由于 LWG 2059,信号库将无法构建.但除此之外,我认为它有效.

You'll get lots of warnings. And the signals library will fail to build due to LWG 2059. But otherwise I think it works.

这篇关于如何使用 clang++/libc++ 编译/链接 Boost?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

The End

相关推荐

无法访问 C++ std::set 中对象的非常量成员函数
Unable to access non-const member functions of objects in C++ std::set(无法访问 C++ std::set 中对象的非常量成员函数)...
2024-08-14 C/C++开发问题
17

从 lambda 构造 std::function 参数
Constructing std::function argument from lambda(从 lambda 构造 std::function 参数)...
2024-08-14 C/C++开发问题
25

STL BigInt 类实现
STL BigInt class implementation(STL BigInt 类实现)...
2024-08-14 C/C++开发问题
3

使用 std::atomic 和 std::condition_variable 同步不可靠
Sync is unreliable using std::atomic and std::condition_variable(使用 std::atomic 和 std::condition_variable 同步不可靠)...
2024-08-14 C/C++开发问题
17

在 STL 中将列表元素移动到末尾
Move list element to the end in STL(在 STL 中将列表元素移动到末尾)...
2024-08-14 C/C++开发问题
9

为什么禁止对存储在 STL 容器中的类重载 operator&()?
Why is overloading operatoramp;() prohibited for classes stored in STL containers?(为什么禁止对存储在 STL 容器中的类重载 operatoramp;()?)...
2024-08-14 C/C++开发问题
6