rocketmq-cpp致命错误LNK1112:模块机器类型“ x64”与目标机器类型“ X86”冲突

时间:2018-08-07 11:15:59

标签: visual-studio-2017 rocketmq

我正在从rocketmq-cpp开源github项目中生成robotmq dll。 Boost 1.56.0,->使用此jam.exe进行构建msvc体系结构= x86地址模型= 64链接=静态运行时-链接=静态阶段(已构建64位) 的Cmake 3.9.3 因此,我已经使用cmake -G“ Visual Studio 15 2017”构建了robotmq-cpp它将生成Project,但是当我每次构建项目时,它始终显示错误 libboost_thread-vc140-mt-s-1_56.lib(thread.obj):致命错误LNK1112:模块计算机类型“ x64”与目标计算机类型“ X86”冲突 但是当我将boost 1.56.0更改为使用32位进行构建后,我得到了错误 致命错误LNK1112 libboost_atomic-vc120-mt-1_58未找到。我无法找到Visual Studio如何搜索boost 1.56.0 / stage / lib.i中没有的libboost_atomic-vc120-mt-1_58。

1 个答案:

答案 0 :(得分:0)

考虑到您已经构建了作为64位库的boost 1.56.0,在构建rocketmq-cpp时,必须确保还为Visual Studio使用64位生成器。清除现有的构建目录后,请尝试使用cmake -G "Visual Studio 15 2017 Win64"(请注意Win64前缀)

请参见https://cmake.org/cmake/help/latest/generator/Visual%20Studio%2015%202017.html