3
我正在使用VC++ 2005应用程序跟踪链接器错误。当我打开详细的连接器输出,我注意到一吨以下的消息:VC++链接器输出中的/ DISALLOWLIB消息的含义是什么?
加工/DISALLOWLIB:nafxcwd.lib
究竟是什么的/ DISALLOWLIB开关是什么意思?
我正在使用VC++ 2005应用程序跟踪链接器错误。当我打开详细的连接器输出,我注意到一吨以下的消息:VC++链接器输出中的/ DISALLOWLIB消息的含义是什么?
加工/DISALLOWLIB:nafxcwd.lib
究竟是什么的/ DISALLOWLIB开关是什么意思?
它阻止某些库与其他库一起使用。例如,msvcrtd.lib
库有一个条目禁止msvcrt.lib
(因为将该库的调试版本和发行版本放在同一个可执行文件中会导致各种问题)。
我不确定它实际上是一个链接器开关,但我从来没有尝试过(它在各种Visual Studio发行版的任何链接器版本中都没有记录)。这是可以插入:
#pragma comment(linker, "/disallowlib:somelib.lib")
在源文件中
因此它可能链接器可以允许它。你在哪里做发现它在图书馆内。如果你执行:
dumpbin.exe /rawdata msvcrtd.lib
,你会看到类似这样的:在输出
/disallowlib:libcmt.lib
/disallowlib:libcmtd.lib
/disallowlib:msvcrt.lib
,意思是“命令”是的库内容本身的一部分。