我是 C++ 新手,现在正在努力编译和链接。最近我一直在使用 cmake 和 make 重新编译一个使用 Boost 的库(mlpack)(Cmake 找不到 boost 1.51(windows 8))。
在第一次尝试中,我下载了 Windows 的预编译二进制文件。这没有很好地工作,我已经解释过我使用的二进制文件是用于 MSVC,而不是 MinGW,因此很麻烦。事实上,在使用 MinGW 重新编译 boost 之后,一切正常。
在这里,我只想直观地了解 MSVC 和 MinGW 的二进制文件之间的区别。我(天真地?)认为二进制文件是特定于操作系统/处理器的。MSVC 的二进制文件包含哪些使 MinGW 无法使用它们?