我正在尝试使我们产品的Windows版本复活,但尝试移至MingW64以获得更好的c ++线程体验。但是,当然,我不想只丢弃旧的#include winpthreads代码。我想要一个ifdef。
我读到的所有内容都说应该定义 MINGW64 ,但是eclipse看不到它,命令行也看不到:
C:\Program Files (x86)\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32>echo | bin\gcc -E -dM - | find "MING"
#define __MINGW32__ 1
那么这是我,还是这样?还是我仍然以某种方式看到我的旧mingw(32)安装?
答案 0 :(得分:0)
简单的答案。
如果您安装mingw64,则同时定义了__MINGW32__
和__MINGW64__
,我现在可以确认,但仅,如果您 实际上 安装64位版本。
很遗憾,鉴于mingw64 fork在64位平台上更好,因此默认值为32位安装,由无用的名称“ i686”标识。您将需要使用“ x86_64”选项。