先说方法: 把VS自带的库目录全部删除,然后加上:$(LibraryPath)

网上查了很多方法,对我都没有用。后来自己找到解决办法了,这里分享给大家。

我想编译64位的程序,于是选择了debug + x64的编译环境。

我报的错误是:msvcprtd.lib(MSVCP110D.dll) : fatal error LNK1112:模块计算机类型“X86”与目标计算机类型“X64”冲突。

首先,产生这个问题的原因是因为静态库(.lib)文件的位数和我们选择的目标位数不一样,我们需要使用正确类型的静态库才行。

打开属性页面会看到,在库目录中,除了我们自己编辑的目录外,还有VS自带的目录。比如:$(WindowsSDK_LibraryPath_x86);

网上说把x86改成x64就可以了,但是我失败了。

最终解决方法是 把VS自带的库目录全部删除,然后新增这一项:$(LibraryPath)

这样就可以了。

其实我还尝试过另外的方法,就是把报错的那些静态库文件记下来,然后在计算机里找到64位的对应的库文件,然后单独放到一个文件夹,加入属性页的库目录,但是要放在第一项。这样不会报错,但是后续的操作中却出现了一些很奇怪的错误,比如报了:

错误 C1189 #error: The C++ Standard Library forbids macroizing keywords. Enable warning C4005 to find the forbidden macro.

然后还有一些恶心的无法识别的外部符号的错误。最后找到了那个配置方法才解决的。

这个方法不一定都适用,但不妨一试。

PS:VS环境配置真恶心。本以为用VS快一年,总不会在环境上栽那么多跟头了,结果一直在环境上面和VS斗智斗勇,心累...

先说方法:把VS自带的库目录全部删除,然后加上:$(LibraryPath)网上查了很多方法,对我都没有用。后来自己找到解决办法了,这里分享给大家。我想编译64位的程序,于是选择了debug + x64的编译环境。我报的错误是:msvcprtd.lib(MSVCP110D.dll) : fatal error LNK1112:模块计算机类型“X86”与目标计算机类型“X64”冲突。...
模块 计算机 类型 x64 目标 计算机 类型 X86 冲突 最近在编译一款开源软件的时候,遇到了“ 模块 计算机 类型 x64 ”与 目标 计算机 类型 X86 冲突 的问题,网上查了好多资料,都是配置“链接器-》高级-》 目标 计算机 ”和选择 X64 平台编译器,可是怎么试都不行,最后发现是“命令行”里依然是“ X86 ”的问题,下面给出详细的 解决 步骤: “生成-》配置管理器-》活动 解决 方案平台”设置为" X64 ",如果没有就新建。 1、“链接器-》高级-》 目标 计算机 ”设置为"Machine X64 (/MACHINE: X64 ...
win10下,vs2013&opencv2.4.13调试项目,debug win32平台下正常运行,debug x64 下报错:     error LNK1112: 模块 计算机 类型 X86 ”与 目标 计算机 类型 x64 冲突 。     其他项目win32和 x64 下调试都能正常运行,说明系统已经安装VS下 X64 编译能力,于是检查项目属性发现原因如下:
在使用优化库的过程中,因为要配置优化库所以需要链接库,但是配置完成后一直显示 计算机 类型 X86 ”与 目标 计算机 类型 X64 冲突 的问题,搜集了很多 解决 办法最后终于找到问题了,所以总结一下避免后面的人踩坑。 首先,讲一下我自己的原因。主要是因为选择错了目录的 类型 了。 如图所示,我把 X64 的不知道怎么了,电脑默认成 X86 了,所以一直没有找到问题,改一下这个地方就行了。还有上面的配置平台也不能选错了。 X86 对应的咱们说的Win32位的平台。 X64 对应咱们的 X64 平台。 下面介绍一下网上比较好的 解决 办法:
在VS2013+Boost编程时,经常遇到" 模块 计算机 类型 X86 目标 计算机 类型 X64 冲突 "的问题,出现该原因是当前工程是 x86 类型 即32位,而自己要生成的exe或dll是64位,位数不匹配,所以报错。 解决 方法 :将工程 类型 的位数与自己引用的dll或lib位数保持一致。 作者:hglijiahao 本程序只支持24位真彩色bmp图片转8位256色带调色板的bmp图 bmp文件结构参考https://www.cnblogs.com/kingmoon/archive/2011/04/18/2020097.html 思路:修改位图起始偏移量、图像色深,创建调色板,便利位图数据,将RGB转化为灰度 值并转化为灰度的调色板索引值(8位色深调色板有2
你提到了一个常见的错误,这个错误出现的原因是因为 模块 中的 计算机 类型 目标 计算机 类型 不兼容。具体来说, X64 是指64位 计算机 ,而 X86 则是指32位 计算机 。当你在使用64位 模块 时,如果你的 目标 计算机 是32位的,那么就会出现这个错误。 要 解决 这个问题,你需要确认你的 模块 目标 计算机 计算机 类型 是否一致。如果不一致,你需要下载相应版本的 模块 或者更换 目标 计算机