關於code::blocks的幾點注意 part1
A:什麼是code::blocks?
B: 登陸code::blocks 網站, 檢視code::blocks定義。看到幾個大字:
|
我們可以根據我們的需要設定code::blocks預設使用的compier。 我使用的是gcc 編譯器。
點選得到下圖:
最近編譯Kruskal Algorithm的時候, 發現code::blocks 不支援C++11 。 準確的說, 其實是code::blocks 使用的Compiler 不支援C++11。 我們知道, C++11提供了許多新的特性, 例如auto變數, 智慧指標等等。 但是不幸的是, 對於g++, 只有g++4.7 以上的compiler 才支援C++11。 所以要想使得我們的code::blocks 支援 g++4.7 編譯器, 我們必須設定我們的編譯器。
我是用的code::blocks的IDE的版本是10.05. 當然不會支援C++11了。 目前最新的code::blocks 的版本是13.12.。 最新版本的當然具有g++4.7 以上的Compiler了。 淡然也就支援C++11了。
由於我不想重新安裝code::blocks, 我們需要在電腦中安裝g++4.7 以上的編譯器了。
PS: 如果你是用的是code::blocks 13系列版本的話, 可以如下操作以便支援C++11:
setting -》 Compiler, 開啟編譯器設定介面, 選中
然後儲存。 參加下圖。
由於我的code::blocks 的版本是10.05,settings -> compiler and debugger, 發現沒有上面的那個選擇(option), 介面如下:
為了為code::blocks配置支援C++11的編譯器, 我們需要下載最新的Mingw。
下載完成後, 解壓縮相關的Mingw 的檔案到C盤下(預設)。 路徑為C:\Mingw。 期間出現如下選擇視窗:
通過點選檢視每個package的作用, 我選擇如下C++的Compiler:
然後, 如下點選確認:
根據提示, 繼續, 最終得到安裝過程如下, 等待, 直至安裝成功:
安裝完成後如下:
然後, 由於不在安裝其他的package了, 關閉即可。
接下來配置環境變數:
切換到安裝目錄下:
接下來, 賦值安裝目錄:
配置系統變數Path 如下:
確認即可。
接下來, 開啟terminal, 如下(開始-執行-cmd):
出現上述資訊, 說明安裝成功(沒有安裝gcc)。
接下來, cls 清屏(記得Linux 系統的清屏命令是clear)。
接下來, 可以檢視g++ 的版本號(兩種辦法如下):
可見, 安裝的g++ 的版本是4.8,1, 當然滿足我們的需要。
接下來, 我們編寫一個程式測試一下:
在D盤中建一個test 資料夾:
開啟NOTEPad++ , 編寫如下C++ 程式(注意由於使用的是g++ 編譯器, 字尾名為.cpp):
儲存。
接下來, 開啟終端, 切換到hello.cpp 所在的路徑中:
可以使用dir 命令檢視test 資料夾下的所有檔案的資訊。
NOTE: 在輸入資料夾命令的時候, 學會使用Tab 鍵, 補全檔名, 鍵盤上向上箭頭是上一個指令, 向下箭頭是下一個指令。 以提高我們的工作效率(這點和Linux一樣)。
出錯了。 原因何在。
注意在windows 中, 我們需要定義編譯完成後生成的二進位制檔案的名字。 所以重新開始。 cls 清屏。 重新輸入如下指令(假如我們將編譯生成的二進位制檔案命名為text):
然而執行後任然報錯:
報錯的原因是沒有找到libgmp-10.dll。 有兩個原因。 一個是沒有設定環境變數(不可能我已經設定了)。 第二個原因是安裝包的時候丟失了。 開啟C:\MinGW\bin, 果然沒有這個檔案。接下來, 就是下載這個檔案, 然後將其放在C:\MinGW\bin 下面既可以解決問題。
接下來, 再次執行指令:
仍然出錯, 此時說是沒有找到libmpc-3.dll, 同樣, 在網上下載下來, 放到C:\MinGW\bin 下面:
等等一大堆錯誤。 所以放棄這個方法。
終極解法:
下載最新版本的code::blocks(即13.12), 解壓縮此版本的code::blocks , 安裝在D盤下, 並複製其中的MinGW檔案到C盤下, 直接替換掉剛在的MinGW檔案。 由於之前已經配置過環境變數, 無序在配置了(也可以直接在將Path變數設定為D盤下的那個code::blocks所在的資料夾中, 不是, 直接將D:\CodeBlocks\MinGW\bin 設定到Path變數中即可)。 都okay。
然後執行, 編譯通過:
檢視test資料夾下的文、此時檔案:
然後執行可執行檔案(直接輸入名字即可):
此時也有gcc, 用於編譯c 程式(因為這個資料夾是從code::blocks 13.12 複製過來的)。
相關文章
- 關於CORS 應該注意的幾點CORS
- 關於MongoDB的幾點注意事項UMMongoDB
- 需要提醒你關於 golang 中 map 使用的幾點注意事項Golang
- 關於 Code::Blocks nightly build svn8982 的新功能介紹BloCUI
- 最近關於工作的幾點思考
- 關於json的幾點思考JSON
- 關於Decorator模式的幾點想法模式
- 【實用知識】關於“投標有效期”,這幾點要注意
- Code::Blocks 編譯引數的相關設定BloC編譯
- 關於golang隨機種子的注意點Golang隨機
- 關於dispatch_once的坑及注意點
- 關於安全策略的幾點解析
- 關於Oracle baseline的幾點Oracle
- 關於MFC操作Excel的幾點心得Excel
- 關於C++引用的一些注意點C++
- 關於redis,你需要了解的幾點!Redis
- 關於產品經理的幾點思考?
- 關於 Swift,我不喜歡的幾點Swift
- 關於redo的幾個小知識點
- 關於面試你不知道的幾點面試
- 手機網站的幾點注意網站
- 關於dismissViewControllerAnimated值得注意的一點(deinit)ViewController
- Code::Blocks Debug配置BloC
- [Android] 關於 Model 層的幾點思考(一)Android
- 關於加強MYSQL安全的幾點建議MySql
- 分享幾點關於 web 前端開發的看法Web前端
- 有幾點關於C語言的疑問C語言
- 關於終端業務元件化的幾點思考元件化
- 關於企業的備份幾點總結
- 關於程式碼審查的幾點建議
- 關於insert /* append */的幾點註記APP
- 基於Spring的MVC的幾個關鍵點SpringMVC
- 使用Array.prototype.indexOf()的幾點注意Index
- aix 上做rac的幾個注意點AI
- Collectors.toMap的幾個注意點
- spark效能優化幾點注意Spark優化
- code::blocks不能除錯的可能原因BloC除錯
- [linux]安裝code::blocksLinuxBloC