c++ - 如何将 win32 应用程序迁移到 x64 应用程序?

标签 c++ visual-studio opencv directshow

最近在Visual Stuido 2015做一个人脸识别应用,为了应用cuda库,这个应用需要从win32类型迁移到x64。在确保每个 extern dll 或 lib 都有其 x64 版本时,我小心地更改配置管理器并调整与 x86 相关的所有内容。

但是在release模式下编译后,总是报错:“LNK1112 module computer type 'x86' conflicts target computer type 'x64'”。错误文件是directshow写的CameraDS.obj。我用 dumpbin/headers 检查了生成的 .obj 文件,然后发现每个 .obj 的头文件值都是机器(x86)。删除这些 .obj 文件或只是干净的解决方案不起作用,IDE 只会抛出相同的错误消息。我不知道为什么。

有什么解决办法吗?

最佳答案

它是lib CameraDS.obj 的来源吗? https://github.com/souseiki/Stereo-Vision

只需为 x64 重新编译即可。

还要检查您是否没有在任何地方留下 x86,查看 fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'X86' 的答案

关于c++ - 如何将 win32 应用程序迁移到 x64 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47669607/

相关文章:

c++ - 如果我们在需要整数的 switch case 中输入一个字符会发生什么

python - 通过 python opencv 查找齿轮的 dentry

opencv - 从 Cuda 设备指针创建 OpenCV/EmguCV GpuMat

python - 复制的OpenCV图像与原始图像不同

c++ - 指向基类的唯一指针

c++ - 函数抛出写访问异常

c++ - ASCII 艺术 - 按亮度级别对 ASCII 字符数组进行排序 (C/C++)

visual-studio - Visual Studio 2012 或 2013 中的 Emacs 键绑定(bind)

c# - 如何从 Windows 10 通用应用程序将 Firebase 与 C# 连接?

c - 三元表达式 VC2008 的解析无效?