【发布时间】:2011-02-27 00:05:00
【问题描述】:
我正在尝试使用 MSVC 2010 而不是 GCC 构建我的应用程序。使用 GCC 一切正常。我的应用程序使用 boost_system 和 boost_thread 库。 我在“系统”布局中使用 VC2010 构建了 boost,这意味着库仅命名为 libboost_system.lib(而不是 libboost_system_compiler_threading_version_wtf_snafu.lib) 这些库位于 C:\Boost\lib 中, Makefile 指定
LFLAGS = /NOLOGO /INCREMENTAL:NO /SUBSYSTEM:CONSOLE
LIBS = /LIBPATH:C:/Boost/lib libboost_system.lib libboost_thread.lib Ws2_32.lib
调用 nmake 时会编译,但尝试链接时会退出
LINK : fatal error LNK1104: cannot open file 'libboost_date_time-vc100-mt-1_43.lib
我是认真的,WTF?我告诉它链接 libboost_systen.lib 和 libboost_thread.lib 它为什么会尝试链接 libboost_data_time 以及为什么它假设我在“标记”布局中构建了库? 如何阻止 MSVC 变得聪明并猜测我可能想要链接的内容?
谢谢, 菲利普
【问题讨论】:
标签: visual-c++ visual-studio-2010 boost linker