本人电脑系统WIN10 64位
OpenCV249,加VS2013环境变量的配置:
普通的配置在各种书上和博客上可以找到很多,但为避免每次新建工程都去重新配置,这里要强调的是在初次使用时,就要用“属性管理器”进行配置。VS2013的属性管理器在“视图-其他窗口”中。找到之后按照常规的配置方式添加相应的路径就可以了。
按上述方法配置完成后,写了一段图片显示的小程序,居然报错:
fatal error LNK1112: 模块计算机类型“X86”与目标计算机类型“x64”冲突。
为解决这个问题,搜索了很多帖子,基本大家给出的解决方案如下:
1:项目解决方案——属性——连接器——高级——目标计算机,看目标计算机是否是MachineX64,不是的话更改为。
2:配置管理器——新建(有的话直接选择)x64
按上面两种方式操作后仍然无法运行,于是最终确定到了下面的方法:
3:属性管理器中,修改DebugX64位下面的属性表,将我们的库目录的路径更改一下,
将原来的 C:\opencv\build\x86\vc11\lib 改为 C:\opencv\build\x64\vc11\lib,这样基本就没问题。Relaese方面一样。
当然,这里如果前面将目标计算机类型设置为32位,就应该在相应的位置将库目录路径改为相应的32位库的路径。这样设置下来,应该不会有问题。
如果还是有问题,可以参考下面方法:
此时可以断定是系统包含的DLL文件是win32下编译的,则,需要把DLL换成64位系统编译的。比如opencv2.3.1,之前编译的就是win32下编译的,则需要重新编译,具体步骤如下:
(1)、运行CMake2.8,点 configure,在弹出的对话框内选择 Visual Studio 9 2008 win64,这个地方需要注意,很多资料上面在介绍OpenCV配置的时候,都没有提及64位的选项问题,大家都是默认选择 Visual Studio 9 2008,没有选后面带win64的,导致make出来的文件没法使用。完成后选择“Generate”。
(2)、这时候,打开opencv.sln,分别在Debug和Release下生成,注意配置管理器里面选择x64平台,不然编译出来的还是不能使用。
(3)、编译完成之后,配置后DLL和Lib的路径,就不会再出以上的错误了。
本文介绍了在Windows 10 64位系统上配置OpenCV2.4.9和VS2013时遇到的'fatal error LNK1112: 模块计算机类型“X86”与目标计算机类型“x64”冲突'的问题及其解决方案。首先,通过属性管理器正确配置环境变量,然后尝试更改库目录到x64版本。如果问题依然存在,可能需要重新编译OpenCV为64位,使用CMake选择Visual Studio 9 2008 win64选项,并在编译时确保选择x64平台。
7895

被折叠的 条评论
为什么被折叠?



