是否可以在C+中静态编译boost::recursive_互斥体+;建设者 > Boo::RealsiffyMutX < /C>和 Boo::CopySuthGuild在C++ Cuilder 2010中使用了 Boost线程-BCB-MT-1Y39 .DLL>强>。我看到还有静态版本-boost\u thread-bcb-mt-1\u 39.lib

是否可以在C+中静态编译boost::recursive_互斥体+;建设者 > Boo::RealsiffyMutX < /C>和 Boo::CopySuthGuild在C++ Cuilder 2010中使用了 Boost线程-BCB-MT-1Y39 .DLL>强>。我看到还有静态版本-boost\u thread-bcb-mt-1\u 39.lib,c++,boost,c++builder,boost-thread,c++builder-2010,C++,Boost,C++builder,Boost Thread,C++builder 2010,我的代码是这样的: boost::recursive_mutex mylock; //... boost::lock_guard<boost::recursive_mutex> lock(mylock); 递归互斥锁mylock; //... 增压:锁和防护锁(mylock); 然而,如果我将compile option设置为Release并将Dynamic RTL option设置为False,我得到的只是将dll boost库与静态运行时混合是一个非常糟糕的主意…。将动态RT

我的代码是这样的:

boost::recursive_mutex mylock;
//...
boost::lock_guard<boost::recursive_mutex> lock(mylock);
递归互斥锁mylock; //... 增压:锁和防护锁(mylock); 然而,如果我将compile option设置为Release并将Dynamic RTL option设置为False,我得到的只是将dll boost库与静态运行时混合是一个非常糟糕的主意…。将动态RTL返回到True会编译,但它需要额外的DLL-cc32100mt.DLLboost\u-thread-bcb-mt-1\u 39.DLL


有没有办法在单个exe中静态编译它?毕竟,提供了LIB文件,这应该是可能的。这个版本的C++ + Builder或Boost?< /P> > P>这是一个问题,我需要在头文件中定义:

#define BOOST_THREAD_USE_LIB
就在:

#include <boost/thread/recursive_mutex.hpp>
#include <boost/thread/locks.hpp>
#包括
#包括

然后它就可以编译了,没有任何问题。

我需要的是在头文件中定义:

#define BOOST_THREAD_USE_LIB
就在:

#include <boost/thread/recursive_mutex.hpp>
#include <boost/thread/locks.hpp>
#包括
#包括
之后,它就可以毫无问题地编译了