Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/148.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ &引用;忽略未知选项/NODEFAULTLIB:LIBCMTD";_C++_Visual Studio 2008_Libcmtd - Fatal编程技术网

C++ &引用;忽略未知选项/NODEFAULTLIB:LIBCMTD";

C++ &引用;忽略未知选项/NODEFAULTLIB:LIBCMTD";,c++,visual-studio-2008,libcmtd,C++,Visual Studio 2008,Libcmtd,仍然在经历详细的主要编译,但是关于/NODEFAULTLIB的使用,我有一个特殊的附带问题 我一直在尝试使用/NODEFAULTLIB:LIBCMTD开关来解决一个链接器问题,其中解决方案中的一个项目使用/MTd(LIBCMTD.LIB)而不是/MDd MSVCR90D.DLL 不幸的是,正如你可能从这篇文章的标题猜到的,我似乎没有正确地使用它。在构建解决方案时,我在三个地方看到了此警告: 1> cl:命令行警告D9002:忽略未知选项'/NODEFAULTLIB:LIBCMTD' 我正在W

仍然在经历详细的主要编译,但是关于/NODEFAULTLIB的使用,我有一个特殊的附带问题

我一直在尝试使用/NODEFAULTLIB:LIBCMTD开关来解决一个链接器问题,其中解决方案中的一个项目使用/MTd(LIBCMTD.LIB)而不是/MDd MSVCR90D.DLL

不幸的是,正如你可能从这篇文章的标题猜到的,我似乎没有正确地使用它。在构建解决方案时,我在三个地方看到了此警告:


1> cl:命令行警告D9002:忽略未知选项'/NODEFAULTLIB:LIBCMTD'

我正在Windows XP Professional SP3上运行Visual Studio 2008标准SP1。我通过右键单击这个麻烦的项目,选择属性,展开“配置属性”,展开C/C++列表,选择“命令行”,并在“附加选项”字段中输入/NODEFAULTLIB:LIBCMTD来添加这个开关

我在网上的其他地方读到,这应该是一个链接器设置,而不是C/C++设置,所以我也尝试在配置属性->构建事件->预链接事件->命令行下输入它,尽管这本身给了我警告,但编译时不会产生任何不同的结果:


1> 文件名、目录名或卷标语法不正确。
1> 项目:错误PRJ0019:工具从“执行预链接事件…”返回错误代码

所以大家。。。我不明白这里的/NODEFAULTLIB开关是怎么回事?如何让VS2008识别该命令并停止忽略它

谢谢,
-Alex

在项目属性中可以找到:配置属性->链接器->输入->

 'Ignore All Default Libraries'
 'Ignore Specific Default Libraries' <-- this is I suppose of interest for you
“忽略所有默认库”
“忽略特定的默认库”此选项已记录在案。从表面上看,现在你正确地使用它,而不是在C++页面上使用它,但是我怀疑可能缺少的是,你需要在文件名中包含<代码> .LIB < /C> >,例如:

/NODEFAULTLIB:LIBCMTD.LIB

我认为,如果删除此选项并查看链接器错误,它将告诉您所需的确切语法。不过,更好的解决方案是查看此项目中的所有单个库和DLL,并找出哪些库正在使用另一个运行时库。解决问题的根源比以后解决问题要好。

Buh。。。我的中似乎没有链接器页:(查看Library->GeneralI也奇怪地遇到了这个问题。似乎NODEFAULTLIB不应该被忽视。恐怕我从来没有找到解决方案。这是为了我们从另一家公司购买的一个大规模(150多万行代码)项目。经过3周的痛苦尝试,他们联系并说“哎呀,我们给你的树枝错了,那根坏了。”呵呵。