【发布时间】:2015-07-08 09:46:39
【问题描述】:
在 Visual Studio 2013 中编译 DLL 时,我包含了一些 boost (1.58) 头文件。一个是<boost/system/error_code.hpp>。众所周知,默认情况下,这将需要链接到 boost 库。但是,我想使用仅标头变体而不处理另一个库。为此,我想出了how to make it work on Linux + Mac。但是,我无法让它在 Windows 上运行。链接器总是需要那个额外的库 (libboost_system-vc120-mt-gd-1_58.lib)
Visual Studio 中有什么技巧可以避免链接到该库?
【问题讨论】:
-
也许您链接的其他 boost 库之一不是使用
-DBOOST_ERROR_CODE_HEADER_ONLY编译的? -
我没有链接到任何 boost 库。这是第一个。
-
我不能用 GCC 复制这个,我只是尝试用一个测试应用程序构建一个 boost_filesystem dll,只要为两者都指定了
-DBOOST_ERROR_CODE_HEADER_ONLY,就不需要链接 boost_system。
标签: c++ visual-studio boost