我想在Windows上的C ++项目中使用boost日志库(VS 2010)。一切都使用共享(DLL)运行时。由于我的项目包含多个模块,我需要将boost.log编译为DLL。问题是,Boost.log依赖于其他五个库:system,chrono,datetime,filesystem和thread。我不想拖动6个DLL,我想在boost.log中静态链接它们。
我尝试在config / user.hpp中#define BOOST_LOG_DYN_LINK,但它没有帮助:当我构建日志库时,它构建为静态(不是我想要的),或者作为引用其他5个DLL的DLL(不是我想要的是什么。)
我需要一个日志DLL,其中包含静态链接的所有5个依赖项。是否可以实现?
答案 0 :(得分:-1)
我认为您需要创建一个单独的DLL项目,静态链接您想要的boost库。可能这个项目不会添加任何其他代码(除了一些什么都不做的DllMain函数),但它会给你一个新的DLL(例如,boostlibs.dll),你可以动态链接到你的应用程序。