1. 程式人生 > >linux下gcc程式設計05-window下開發工具安裝

linux下gcc程式設計05-window下開發工具安裝

一。 window下開發環境安裝

  Unix下編譯通過的C程式碼,在win32下編譯是不能通過的 ,當然Unix 和win32的API都是符合標準C,也就是說,大多數函式呼叫在unix和win32下是相同的.但是,unix有自己一些獨特的API(如fork,spawn,signals,select,sockets等),如果程式碼中使用了這些API,在win32下當然找不到對應的庫.     但是,這些API的功能在win32中也能實現,也許你已經發現了一個能讓window編譯Unix風格程式碼的方法:     1.修改編譯器,讓window下的編譯器把諸如fork的呼叫翻譯成window等價的形式--這就是mingw的做法.     2.修改庫,讓window提供一個類似unix提供的庫,他們對程式的介面如同unix一樣,而這些庫,當然是由win32的API實現的--這就是cygwin的做法.

MinGW相比CygWin/gcc來講,更加貼近win32。因為它幾乎支援所有的Win32API。它所連線的程式,不需要任何第三方庫即可執行。

MinGW安裝 

   mingw官網提供是 一個二進位制檔案 遠端安裝 mingw-get-setup.exe  官網太慢直接去sourceforage去down下來    https://sourceforge.net/projects/mingw-w64/      直接地址

   接下來雙擊一路 等待下載完成 已經下載完成的離線包 500多MB    將bin目錄設定到環境變數

C:\MinGW\bin>gcc --version
gcc (MinGW.org GCC-6.3.0-1) 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.

二。Clion開發工具

 使用記事本 或者vi在linux直接編寫程式碼 個人感覺效率偏低 有時引入標頭檔案還要去查api 如果有提示 大概方法也能 猜個90%左右  這裡推薦jetbrains公司的clion  下載地址(30天的免費使用 ):  http://www.jetbrains.com/clion/

 下載完成後  一路到驗證 階段 點選啟用碼 (https://jetlicense.nss.im/ 這個網站上有 拷貝進去就可以啟用一年試用期)

配置MinGW

 開啟clion 新建一個專案 選擇 c可執行檔案

如果安裝了mingw clion自動搜尋並且配置 (點選選單 File  Setting選擇)

但是 我的控制檯報錯 

For MinGW make to work correctly sh.exe must NOT be in your path

說找了一個sh.exe  我之前裝過openssh(C:\Program Files\OpenSSH\bin;) 立馬從環境變數中剔除 點選控制檯重新整理按鈕發現正常 後 就可以點選選單欄的Run - Run 專案名稱 或者 shift+f10  正常輸出helloworld 為啥會輸出了開啟目錄結構

CmakeLists.txt明顯是cmake clion繼承了cmake verygood 裡面的程式碼自己開啟看看吧 main.c 就是一個普通的main方法了 clion帶給我們的除了編譯執行(gcc make) 除錯(gdb)方便 同時代碼提示也是牛b的一點 現在享受在window上開發linux程式吧  

mingw很多關於linux內部的一些功能無法使用 比如fork等 cygwin支援 

配置Cygwin

下載後 開啟開始安裝 cygwin(一路預設 安裝目錄是 C:\cygwin64) 到達

 choose A download Site頁面

一路到達 Select Package頁面 view上點選類別

Search中搜索gcc 將所有包選中安裝

               搜尋gdb 將所有包選中安裝

               搜尋make 將所有包選中安裝

clion中 同 mingw配置就可以使用拉  安裝的目錄結構

由於cygwin實現了linux的基本所有的標頭檔案的功能window庫 所以在window編寫的程式 linux直接編譯執行 而且linux的api在window都可以直接使用  接下里我所有的程式碼都是基於cygwin在window下使用clion編寫