剛安裝好的 Ubuntu 是不能編譯 C/C++ 的 code 的, 至少 12.10 是不行的. 可以輸入以下的 command 來確認.
$ g++ -v
以下說明 C/C++ 的編譯環境的安裝, 測試及建議
Install C/C++ Compile environment
首先, 先來安裝一個更簡化的套件管理程式
$ sudo apt-get install aptitude
接下來, 用它來安裝開發環境
$ sudo aptitude install build-essential
安裝過程會出現版本衝突, 一定要輸入 Yes 才能繼續.
完成後, 再測試一遍版本訊息
$ g++ -v
應該會出現和下面類似的畫面.
這樣就完成了.
編譯及執行 C program
建立一個自己的工作目錄,
啟動 gedit, 輸入以下程式:
$ gedit test01.c
#include <stdio.h>
int main()
{
printf(“Hello World!\r\n”);
}
編譯它
$ gcc test01.c
如果沒有錯誤訊息, 可以 ls -al 看一下, 看看是不是有一個 a.out 的可執行的檔案.
執行它
$ ./a.out由於工作目錄並不在 shell 的搜尋路徑中, 如果不指定當前目錄, 會遇到 command not found 的錯誤.
再編譯它一次
這次增加一些參數$ gcc -ansi -pedantic-errors -Wall test01.c
結果邊譯失敗, 發生錯誤. 這個程式其實有一個問題, main 定義為回傳 int 型別, 但是程式中並沒有 return. 如果不指定 ansi 相容的標準, 錯誤和警告的等級, 可以編譯成功. 但是這就會在未來多產生一些不確定的問題. 建議善用編譯器的檢查機制. 不過每次這樣寫, 真的也是很煩人, 我們把它放到 script 去, 會省事一些.
編輯 script
$ gedit gccp輸入以下內容:
#/bin/sh
echo compiling C++ using -ansi -pedantic-errors -Wall
gcc -ansi -pedantic-errors -Wall $1 $2 $3
存檔後, 增加執行的屬性
$ chmod +x gccp
放到 usr/local/bin. 注意看一下, 如果沒有自己放˙檔案進去, 這個目錄會是空的. 這個目錄的用意, 就是存放一些 local ( 本機電腦 ) 自行添加的程式, 所以也在 shell 的 預設搜尋路徑中. 但是寫入是需要 root 的權限的.
* 建議儘量把自己寫的程式放在這邊
$ sudo cp gccp /usr/local/bin
修正程式, 並重新 compile 執行.
$ gccp test01.c
$ ./a.out
編譯及執行 C++ program
啟動 gedit, 輸入以下程式:
$ gedit test01.cpp
#include <iostream>
using namespace std;
int main()
{
cout << "Hello World!" << endl;
return 0;
}
編輯 C++ 的編譯 script, 同樣放到 /usr/local/bin
#/bin/sh echo compiling C++ using -ansi -pedantic-errors -Wall g++ -ansi -pedantic-errors -Wall $1 $2 $3
沒有留言:
張貼留言
請提供您寶貴的意見