已有環境:mingw4.5.2 + msys-cnc++
gnu的gcc源碼已更新至4.8.2,mingw官網提供4.8.1版本,現經過直接安裝二進制包的方式安裝4.8.1版的mingw。預先大體閱讀官網文章(mingw_howto),按照官網的說法,最小安裝方式下,須要如下二進制包:shell
binutils (bin and dev)api
mingw-runtime (dev and dll)工具
w32api測試
Required runtime libraries for GCC:ui
mpc (dev and dll)spa
mpfr (dev and dll)調試
gmp (dev and dll)ip
pthreads (dev and dll)get
iconv (dev and dll) --- 即libiconv
zlib
gettext
gcc-core (bin and dev and dll)
準備工做
爲解壓縮二進制包,需事先安裝好lzma和tar工具。命令lzma -d 用於解壓.lzma壓縮包,命令tar -xf 用於歸檔.tar文件。在官網下載上述二進制包,所有放置同一目錄下,假定此目錄爲$mingw481。前後使用lzma和tar命令逐一解壓縮上述包,即.tar.lzma --> .tar --> bin、include、lib、libexce、mingw3二、share,解壓完成後,.tar文件默認不會刪除。
2. 測試
事實上,解壓完成後,一個最小的gcc編譯環境已經可用。爲方便在msys的終端中使用,
在msys與/bin同級的目錄下,新建空文件夾mingw,在/etc/fstab中新加一個掛載相,把win格式的$mingw481路徑掛載到/mingw;而後確保/mingw/bin在shell的PATH環境變量中,沒有的話在/etc/profile中添加;重啓終端,測試gcc --version,而後到具體的一個工程目錄下,使用make跑一遍編譯過程。
3. 完善
此時還未安裝gdb調試器,按照相同作法,下載解壓mingw-gdb和libexpat包,gdb --version測試。
在$mingw481下解壓生成的mingw32目錄,有和上級同名的子目錄:bin、include、lib、libexce,其中include和libexec的內容與上層目錄內容徹底相同,建議所有刪除,保留bin目錄及其內容,lib下的內容僅保留ldscripts子目錄(參照mingw4.5.2)。解壓後的$mingw481/bin目錄下,有大量以mingw-爲前綴的可執行文件,如mingw-ar、mingw-as等,其實bin目錄下已有這些文件(無前綴),故以mingw-爲前綴的可執行文件能夠刪除以減少空間消耗。
語言包。gcc, binutils, gdb和make的輸出信息語言包,解壓後在 $mingw481/share/locale路徑下,但貌似沒起做用,不明。
組件擴展和升級。解壓至此,gcc僅支持c語言編譯,若要支持c++、ada、fortran等,同理只需下載並解壓二進制包便可。
附件
gcc -v輸出信息
gdb -v輸出信息
爲方便直接使用,本人已將整個mingw組件打包成7z格式,放在百度盤(百度盤mingw4.8.1)