我正在运行推荐MinGW的CLion . 最新的似乎是MSYS2 . 起初,CLion没有找到gcc,cmake等 . 为此,我必须安装mingw-w64-x86_64-toolchain,它在我的msys64(MSYS2安装文件夹)文件夹中创建一个mingw64文件夹 .
我试图编译的软件需要MSVC函数或POSIX函数,如 sysconf
. 但是sysconf是未定义的,至少在mingw-w64-x86_64-toolchain的unistd.h中是这样 . 在MSYS2本身的主unistd.h中它是可用的 .
那么,最大的区别是什么?他们为什么不一样?
1 回答
MSYS2环境提供two toolchains以在Windows上定位两个不同的运行时 .
位于/ usr中的msys2工具链使程序依赖于msys-2.0.dll POSIX仿真层 .
位于/ mingw32或/ mingw64中的MinGW工具链创建了本机Windows程序,基本上只能访问Microsoft的 Headers 和lirbaries提供的功能,而不是其他 . 这些程序更容易重新分发给其他用户,并且通常运行得更快 .
如果你真的需要POSIX的很多功能,你可能无法使用MinGW工具链 .