搭建MSYS2編譯環境

2021-07-31 12:08:48 字數 1990 閱讀 7824

軟體安轉比較簡單,一直下一步就好了。

msys2預設的軟體源,在國內訪問非常慢,最好配置為國內的源

修改msys64\etc\pacman.d目錄下的三個mirrorlist.*檔案

##

## 32-bit mingw-w64 repository mirrorlist

#### primary

##清華大學映象

server =

##北京理工大學映象

server =

## msys2.org

server =

server =

server =

##

## 64-bit mingw-w64 repository mirrorlist

#### primary

##清華大學映象

server =

##北京理工大學映象

server =

## msys2.org

server =

server =

server =

##

## msys2 repository mirrorlist

#### primary

##清華大學映象

server =

##北京理工大學映象

server =

## msys2.org

server =

server =

server =

pacman -s base-devel

pacman -s mingw-w64-x86_64-toolchain

pacman -s mingw-w64-i686-toolchain

軟體安裝完後會生成mingw32和mingw64兩個目錄,分別是生成32位和64位程式的編譯工具

部分檔案說明:

mingw32.exe    開啟32位編譯工具的終端

mingw64.exe    開啟64位編譯工具的終端

msys2.exe       就是乙個命令列終端,沒什麼用

msys2_shell.cmd    通過傳參啟動上面的3個程式

到上面的一步,已經搭建好了gcc的windows編譯環境,不過在windows上開發,一般都希望使用visual studio作為開發工具,雖然gcc編譯的庫vs上也能呼叫,但是會鏈結gcc裡的庫,很可能會出現鏈結衝突,所以最好使用vs的編譯器。一開始我只是想在msys2.exe的這個終端裡新增vs編譯器的環境,後面發現很多開源庫即使使用了vs的編譯器,也需要依賴gcc的那一套構建工具,所以就乾脆沒用msys2.exe,直接在mingw32和mingw64兩個終端都加了vs編譯器的環境。

我這裡是重新建了兩個批處理檔案mingw32.cmd和mingw64.cmd,內容如下

set msys2_path_type=inherit

call "c:\program files (x86)\microsoft visual studio 14.0\vc\bin\vcvars32.bat"

msys2_shell.cmd -mingw32

set msys2_path_type=inherit

call "c:\program files (x86)\microsoft visual studio 14.0\vc\bin\amd64\vcvars64.bat"

msys2_shell.cmd -mingw64

set msys2_path_type=inherit,是指定msys2 path環境變數的生成方式,如果不指定下面呼叫的call命令將不會生效,後面兩句比較好理解。

MSYS2環境搭建

以安裝mingw w64 i686 zlib為例,命令如下 1pacman s mingw w64 i686 zlib 然後按y進行確認安裝,如下圖所示 安裝完畢,即會安裝到mingw32目錄下。接著測試安裝jpeg png tiff webp freetype glew glfw成功。另外,在qt...

使用msys2編譯GVIM遇到的問題

重新按照流程進行編譯gvim,發現了一些問題 1.首先,是在使用 msys2時,找不到gcc 解決方案,使用pacman安裝後,使用mingw64.exe進行安裝 2.在編譯gvim,解決python依賴項時,使用不同版本的python出現問題 解決方案 編譯64位gvim使用 64位的python...

MSYS2快速配置C 環境 ZSH

完成後執行pacman syu 會提示關閉msys2視窗。關閉後再次啟動msys2並執行 pacman su注意 前者有時會更新pacman自身,這會導致pacman的映象列表mirrolist被重置,需要重新換源。執行 pacman s mingw w64 x86 64 toolchain 會安裝...