我有一个 Visual Studio 项目。这很简单,而且很有效。但是,我们正在将代码移植到 64 位。我已经编译了这个简单的项目,但它无法链接:
fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'x64'
这告诉我它正在尝试链接错误版本的库。它应该链接 64 位库,但它正在尝试链接 32 位库。这显然是错误的。
我的问题是我无法弄清楚我的项目决定在哪里链接该库。我看过:
- 项目属性,道具文件。尽管指定了 lib 路径,但没有指定 lib 名称。
- 项目属性 -> 链接器 -> 命令行。也不在那里。
- 我已经查看了某种 a 的头文件
#pragma comment(lib, )
,但我找不到它的任何用途。
我还能在哪里看?有没有办法让 Visual Studio 告诉我它是如何决定在不同的库中链接的?
不确定它是否相关,但这是一个使用 CppUnit 的小型单元测试项目。它cppunit-vc100-MTd.lib
在应该链接的时候链接cppunit-vc100-x64-MTd.lib