使用Visual Studio 2008和Boost库1.46.1我想用/ CLR标志编译和链接以下内容:
#include <boost/thread/thread.hpp>
void run() {}
int main(int argc, char *argv[])
{
boost::thread t(run);
}
Run Code Online (Sandbox Code Playgroud)
第一个错误是关于boost :: thread中的前向声明的伪结构.这篇文章 通过声明:
namespace boost {
struct thread::dummy {};
}
Run Code Online (Sandbox Code Playgroud)
当然,我现在可以编译,但后来我得到链接器警告
警告1警告LNK4248:'boost.detail.win32._SECURITY_ATTRIBUTES'的未解析的typeref标记(0100001F); 图像可能无法运行
运行应用程序导致
应用程序无法正确启动(0xc000007b).
前面提到的论坛帖子中的所有建议都不适合我.我已经构建了Boost Threads lib的静态版本,它运行正常,没有/ CLR标志.调试/发布没有区别.我在Win7 32位下运行.
任何提示?