对提升构建参数感到困惑
Confused by boost build parameters
好吧,我意识到这个问题可能已经被问过好几次了,但我找不到合理的答案。
在 linux 下使用 g++4.9,我像这样构建了 boost。我根据从其他互联网建议的文档中收集到的内容,随机选择了这些值:
sudo ./bjam -a -j8 variant=release link=static runtime-link=shared threading=multi install --build-type=complete --layout=tagged --with-thread stage
但我在 /usr/local/lib
中只看到 mt(因为我在名称中看到 -mt)、共享库和静态库。不,共享非线程库?
我很困惑:
link
和 runtime-link
有什么区别?
threading=multi
和 --with-thread
有什么区别?
如何构建多线程和非 mt 共享库,并尽可能优化速度?
大部分记录在:
http://www.boost.org/build/doc/html/bbv2/overview/invocation.html
回答 1:link 表示您创建的库是静态的还是共享的,而 runtime-link 表示您的新库将使用共享的还是静态的本机 C 和 C++图书馆
回答 2:threading=multi 表示您的新库将利用系统的多线程能力。 --with-thread 意味着您构建 BOOST 线程库。构建 boost 时,您可以选择仅构建可用库的一个子集。
要同时构建多线程和非 mt,请使用选项
./bjam ....线程=单线程=多线程..
一个
好吧,我意识到这个问题可能已经被问过好几次了,但我找不到合理的答案。
在 linux 下使用 g++4.9,我像这样构建了 boost。我根据从其他互联网建议的文档中收集到的内容,随机选择了这些值:
sudo ./bjam -a -j8 variant=release link=static runtime-link=shared threading=multi install --build-type=complete --layout=tagged --with-thread stage
但我在 /usr/local/lib
中只看到 mt(因为我在名称中看到 -mt)、共享库和静态库。不,共享非线程库?
我很困惑:
link
和runtime-link
有什么区别?threading=multi
和--with-thread
有什么区别?
如何构建多线程和非 mt 共享库,并尽可能优化速度?
大部分记录在:
http://www.boost.org/build/doc/html/bbv2/overview/invocation.html
回答 1:link 表示您创建的库是静态的还是共享的,而 runtime-link 表示您的新库将使用共享的还是静态的本机 C 和 C++图书馆
回答 2:threading=multi 表示您的新库将利用系统的多线程能力。 --with-thread 意味着您构建 BOOST 线程库。构建 boost 时,您可以选择仅构建可用库的一个子集。
要同时构建多线程和非 mt,请使用选项
./bjam ....线程=单线程=多线程..
一个