1. 程式人生 > >Windows 7下使用GNU工具編譯C/C++程式的環境搭建

Windows 7下使用GNU工具編譯C/C++程式的環境搭建

本文旨在介紹在Windows下搭建支援C/C++編碼的開發環境。
1 概述

  • MSYS2是Windows下的類Unix命令列執行環境。它提供了pacman包管理器,用pacman可以方便你安裝其它程式包或者工具。
  • MINGW32MINGW64 包含GNU編譯工具集合,可以用它編譯C/C++, Fortran,和其它原始碼。它們的區別之處就是,分別是32位和64位系統下的版本。它們編譯的程式碼,即使沒有MINGW32MINGW64或者MSYS2提供的執行時庫,也可以在Windows下執行。GCC既可以被MSYS2也可以被Window原生CMD命令呼叫。我樂意選擇MSYS2,是因為它建立的環境,提供了包管理器,可以方便安裝其它編碼工具(例如,autoconf
    automake)。 當然了,MINGW32MINGW64 也可以單獨安裝,即使沒有 MSYS2。但是,我還是強烈建議使用MSYS2安裝。

2 安裝 MSYS2

  • 確保系統上沒有mingw 或 msys,否則,請解除安裝它們;
  • 安裝完成後,請務必不要按照官網給出的步驟,避免產生以下錯誤。
錯誤:GPGME error: Invalid crypto engine
錯誤:GPGME error: Invalid crypto engine
錯誤:GPGME error: Invalid crypto engine
錯誤:「mingw32」資料庫不正確 (資料庫不正確或損毀 (PGP 簽名))
錯誤:「mingw64」資料庫不正確 (資料庫不正確或損毀 (PGP 簽名))
錯誤:「msys」資料庫不正確 (資料庫不正確或損毀 (PGP 簽名))
  • 按照 C:\msys64\etc\pacman.conf 第45至47行的描述:
# NOTE: You must run 'pacman-key --init' before first using pacman; the local
# keyring can then be populated with the keys of all official Arch Linux
# packagers with 'pacman-key --populate archlinux'.
  • 你必須先執行命令
pacman-key --init
  • 接著,換掉 C:\msys64\etc\pacman.d\ 的 mirrorlist.mingw32,
    mirrorlist.mingw64 和 mirrorlist.msys 裡的預設源(這裡,C:\msys64要對應於你安裝的目錄位置),改為以下源:
## 32-bit Mingw-w64 repository mirrorlist
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686/
Server = https://mirrors.ustc.edu.cn/msys2/mingw/i686/
Server = https://mirrors.xjtu.edu.cn/msys2/mingw/i686/
## 64-bit Mingw-w64 repository mirrorlist
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/x86_64/
Server = https://mirrors.ustc.edu.cn/msys2/mingw/x86_64/
Server = https://mirrors.xjtu.edu.cn/msys2/mingw/x86_64/
## MSYS2 repository mirrorlist
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/msys/$arch
Server = https://mirrors.ustc.edu.cn/msys2/REPOS/MSYS2/$arch
Server = https://mirrors.xjtu.edu.cn/msys2/msys/$arch
  • 然後才能下命令來同步源,並更新
pacman -Syuu
  • 接著,你就可以愉快地使用了。
pacman -S man gcc base-devel git mingw-w64-i686-toolchain tar perl make openssl

至於上面簽名問題的原因,在archlinux網站上的一篇帖子中《pacman 出了一些問題,error如下》分析一下原因,但是我還沒有考證。待考證後再補充。 帖子內容如下:

類似問題,我以前也是隔幾天就可能遇上。嘗試過換用不同的源發現也不能降低問題出現的機率,就懷疑和ISP的http劫持有關。
解決方法是 /var/lib/pacman/sync 下的所有檔案,新增支援https的源,再執行 pacman -Syu ,進行arch官方檔案更新時總算沒再遇過這樣的問題,可惜archlinuxcn的源不支援https。
官方映象裡支援https的源,可以在下面連結裡找到:
https://www.archlinux.org/mirrors/status/

3 安裝MINGW32/MINGW64

  • 如果你安裝的是64位msys2,那麼執行下列命令:
> pacman -S base-devel mingw-w64-x86_64-toolchain
  • 如果你安裝的是32位msys2,那麼執行下列命令:
> pacman -S base-devel mingw-w64-i686-toolchain
  • 驗證gcc
$ gcc --version
gcc.exe (Rev2, Built by MSYS2 project) 6.3.0
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

4 環境變數的設定

為了方便,一般我們會把gcc所在的路徑加入系統的環境變數,這樣就可以直接使用gcc命令而不用絕對路徑。

  • 右鍵計算機 -> 屬性-> 高階系統設定 -> 環境變數。然後,將C:\msys64\mingw64\bin新增到 path 變數中。
    確定以後 就可以在任意目錄下直接使用gcc命令了。可以在任意目錄開啟cmd視窗,輸入gcc檢視環境變數是否設定成功。如果仍然提示不是內部或外部命令,說明環境變數設定失敗。

相關推薦

Windows 7java SDK下載、安裝及環境變量設置

x64 tool 32位 index ext 步驟 cli lis runt 第一步:下載Java JDK 1 登錄官網站下載正版JDK 2 點擊"SDK Download"進入Java JDK下載頁面 註明: Java JDK和Jav

[MO]windows xpvs2008 安裝opencv2.3 ,開發環境搭建

how to install opencv2.3 for visual studio 2008. 首先說明,這是一個非常詳細的、腦殘的一個過程。高手就走開吧,不要影響我幫助入門新手的心情!! 其實每寫一個文章都很花時間,因為我也是自己摸索入門的。回頭來看看有些問題我現

單點登入cas綜述之cas4.2.7服務端+cas客戶端+示例程式+環境搭建說明-陳杰

3其他說明 1環境搭建以及把示例程式跑起來        一切跑不起來的程式和走不通的教程都是耍流氓,二話不說,先按照我的步驟把程式跑起來在說吧。 1.1安裝JDK1.8       安裝jdk1.8

Windows 7使用GNU工具編譯C/C++程式環境搭建

本文旨在介紹在Windows下搭建支援C/C++編碼的開發環境。 1 概述 MSYS2是Windows下的類Unix命令列執行環境。它提供了pacman包管理器,用pacman可以方便你安裝其它程

Windows配置VSCode編譯/除錯C/C++:launch.json配置

VSCode在windows下配置除錯C/C++程式碼 需要的軟體工具 gcc、gdb工具;推薦下載minGW編譯器,安裝後在minGW安裝目錄下的bin目錄下就有gcc和gdb; VSCode-

Ubuntu編輯並編譯執行c++程式

一、使用vim編輯c++程式碼: vim hello.cpp 輸入如下程式碼: #include <iostream> using namespace std; int main() { cout<<"Hello world!"<<endl;

Windows 7 X64位除錯執行Visual C++ 6.0不能正常退出

VC6在64位Windows7下除錯的時候,再結束除錯,程式無法退出。 問題描述:當我擊F5開始一個專案的除錯時,程式在我設定的斷點處停止,這時我按下Shift+F5後,vc6可以退出除錯狀態,但是WINDOWS系統的工作列上會留下前面除錯時產生的程序圖示。該程序不能被結束,即使我使用工作管理員,也不可以。這

windowsC語言開發環境搭建

有時候要開發一些耗時的演算法,需要用到c語言,所以講下c的環境搭建。 1、安裝MinGW,去官網下載,然後全自動安裝,然後在安裝介面勾選這幾個 最後apply changes,等待安裝結束。 2、在MinGW\msys\1.0下面有個msys.bat檔案,

Windows 7 vs2010記憶體洩漏檢測工具VLD的使用

1 環境和軟體 Windows7 32位系統    Visual Studio 2012 旗艦版    vld-2.2.3-setup.exe  大小1.04M 2 步驟   1)下載安裝 下載好 vld-2.2.3-setup.exe(大小1.04

linux編輯並編譯執行C/C++/python程式

1,C和C++程式 http://www.2cto.com/kf/201207/140035.html http://blog.chinaunix.net/uid-20620288-id-3217203.html 其中,如果hello.c 程式中含有數學函式,用gcc編譯

windows 上用Sublime Text編譯objective-c

本文我個人整理,逐步完善中。參考了很多大牛的知識,設計內容連結如下: 參考1:http://www.cnblogs.com/WhoJun/archive/2013/09/19/3330089.html 參考2:http://www.bubuko.com/infodetail

Windows 7 編譯boost庫

吐槽:樓主出來工作快2年了,自我感覺在公司還不錯,得到領導的認可,但是由於一些原因前段時間準備換工作,面試的時候被面試官問的無地自容。哎。深感自責,於是呼決定發奮圖強,不苟安於現狀,希望後面能夠再接再厲更上一層樓。 買了一本書,boost開發指南,希望能夠從中汲取到營養,

物理機在windows 7 安裝redhat 7(雙系統)

物理機在windows 7 下安裝redhat 7(雙系統)linux 物理機掛載 真實機掛載 紅帽7 老唐 安裝之前,我們先把紅帽7的鏡像文件刻入U盤,用於後面在物理機上安裝linux。刻入工具我們用UltraISO 這個軟件。UltraISO 軟件大家可以在百度下載!!!打開軟件選擇 紅帽7

《Node.js入門》Windows 7Node.js Web開發環境搭建筆記

基於 方法 一位 實時 ibm cal 項目 直觀 ear 近期想嘗試一下在IBM Bluemix上使用Node.js創建Web應用程序。所以須要在本地搭建Node.js Web的開發測試環境。這裏講的是Windows下的搭建方法,使用CentOS 的小夥伴請參考:《No

Windows 7 安裝 docker 應用容器引擎

http c99 image solid mina too 查看 pre virt 文檔地址 ====================================== 安裝篇 下載工具 https://get.daocloud.io/toolbox/

Windows 7用arp命令繫結IP和MAC地址,提示“ARP 項新增失敗: 拒絕訪問”的解決方法

在Win 7版本以管理員身份執行時提示:“ARP 項新增失敗:請求的操作需要提升。”    解決辦法: CMD中輸入:netsh i  i show in  //注意兩個i之間是有空格的 然後找到“本地連線”對應的 “Idx” (我的是

傳智播客C/C 各種開發環境搭建視訊工具文件免費教程

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Ubuntu16.04 安裝 “宋體,微軟雅黑,Consolas雅黑混合版程式設計字型” 等 Windows 7 的字型

原文連結:Ubuntu16.04 安裝 “宋體,微軟雅黑,Consolas雅黑混合版程式設計字型” 等 Windows 7 下的字型   Windows平臺下,“宋體”、“微軟雅黑”、“Courier New(程式設計字型)”用的比較多,看的也習慣了。 那如何在 Ubuntu下

WPF程式Windows 7應用Windows 8主題

原文: WPF程式在Windows 7下應用Windows 8主題 這篇部落格介紹如何在Windows 7下應用Windows 8的主題。 首先我們先看一個很常見的場景,同樣的WPF程式(樣式未重寫)在不同的作業系統上展示會有些不同。這是為什麼呢?WPF程式啟動時會載入與作業系統對應的主題。下面將列出常見

Windows 7 Maven的下載安裝配置 (配置本地倉庫及修改路徑)

環境 windows 7 64位 官網下載Maven 1 首先去官網:http://maven.apache.org/ 進行下載,這裡儘量不要選太高階的版本,選個穩定的版本就可以了。 上面的兩個箭頭都可以進行選擇,第一個箭頭是代表最新的版本,這裡我選擇了第二個箭頭,也