这个问题已经有一个答案在这里:

我建立的一个项目的视觉C++2008年,这是一个例子MFC为基础的应用程序,用于一个静态C++类图书馆我会用我自己的项目。同时建立的配置调试,我会得到如下:

警告LNK4098:defaultlib'MSVCRT'冲突与使用其他库;使用/NODEFAULTLIB:图书馆

之后,使用推荐的选项(通过添加"msvcrt"到"忽略的具体的图书馆"领域中的项目连接设置调试配置)中,程序的链接和运行罚款。但是,我想找出你为什么这一冲突的发生,为什么我忽略一个关键库,并且如果我期待问题后,我如果添加所忽略,或者如果发生了什么我不(因为该程序建立无论如何)。

同时,释放置警告说:

警告LNK4075:忽略'/EDITANDCONTINUE',因为'/OPT:ICF'规范
警告LNK4098:defaultlib'MSVCRTD'冲突与使用其他库;使用/NODEFAULTLIB:图书馆

我猜,"D"后缀意味着这是调试版本的vc++运行时,不知道为什么这个得到使用这段时间。无论如何,添加"msvcrtd"到忽略的领域引起许多链接的错误的形式:

错误LNK2001:尚未解决的外部符号__imp___CrtDbgReportW

任何了解极大的赞赏。

有帮助吗?

解决方案

这通常发生在你的链接针对一个静态的图书馆使用的另一个版本的VC++runtime(C++ ->Code Generation->Runtime Library 设置在项目的性质)。

其他提示

这通常发生在我身上的时候我是(无意中)混合不同的口味的劳动教养,如(因为它似乎要在你的案例)调试和发布或MT和ST。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top