Windows 下使用GCC 等工具,應該選MinGW 還是MSYS2?

MSYS2 和 MinGW 都提供 gcc,但是屬於兩個完全不同的工具鏈。

前者屬於 msys2-devel ,後者屬於 mingw-w64-$arch-toolchain。


使用 mingw-gcc 編譯的目標文件是原生的,而使用 msys2-gcc 編譯的目標文件依賴於 msys2 提供的虛擬 POSIX 環境。

如果你要編譯的東西強依賴於 POSIX syscall (比如 fork 等),那麼就要用 MSYS2 的 gcc。而如果是要當做一個 release 拿去給別人用的,用 MinGW 的 gcc 好些。當然,事情也不絕對,對於前者你也可以給源文件 patch 一個 MinGW 移植,對於後者也可以用 MSYS2 然後附帶上 相關dll。

 

文尾附上MSYS2 編譯FFmpeg依賴項:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章