Ubuntu系統---終端下用g++進行c++項目


                                                                                Ubuntu系統---終端下用g++進行c++項目

目錄

一、編譯工具(g++/gcc)和編輯工具(vim/gedit)
二、C語言 的編譯與運行
三、C++語言 的編譯與運行
四、gcc/g++的詳細過程

“一、二、三”是在當前文件夾下,編譯一個文件為一個可執行文件的例子。對於編譯多個文件為一個可執行文件,以及如何創建一個工程和編譯一個工程(一個大點的工程不止一個.cpp,還有.h,...),后續在學、在作筆記。

 

正文

一、編譯工具(g++/gcc)和編輯工具(vim/gedit)
在ubuntu環境下對C/C++進行編譯首先保證ubuntu系統中包含編譯工具(g++/gcc)和編輯工具(vim),C語言和C++對應的編譯器:gcc -> C , g++ -> C++ 。
如果環境中不存在可以在終端中輸入以下命令進行安裝:

sudo apt-get install build-essential
sudo apt install vim
sudo apt-get install gcc
sudo apt-get install g++

二、C語言 的編譯與運行
步驟:(1)寫.c文件; (2)編譯.c文件; (3)運行可執行文件
(1)寫.c文件
    1).c文件hello.c代碼如下:

    #include<stdio.h>
    int main()
    {
            printf("Hello world !\n");
            return 0;
    }


(2)編譯.c文件
在當前路徑下編譯.c文件:
  gcc -o hello hello.c
編譯完成后可以看到在和hello.c相同目錄下有一個hello的可執行文件。

(3)運行可執行文件
在當前路徑下運行編譯后的可執行文件:
  ./hello
(注意一定要加上路徑才能運行,點表示當前路徑。直接hello不添加路徑,不能運行)

 
三、C++語言 的編譯與運行
步驟:(1)寫.cpp文件; (2)編譯.cpp文件; (3)運行可執行文件
(1)寫.cpp文件

    # .cpp文件hello.cpp代碼如下:

#include<iostream> using namespace std; int main() { cout << "Hello world !" << endl; return 0; }

(2)編譯.cpp文件
在當前路徑下編譯.cpp文件:
  g++ -o hello hello.cpp
編譯完成后可以看到在和hello.cpp相同目錄下有一個hello的可執行文件。

(3)運行可執行文件
在當前路徑下運行編譯后的可執行文件:
  ./hello
(注意一定要加上路徑才能運行,點表示當前路徑。直接hello不添加路徑,不能運行)


四、gcc/g++的詳細過程
  可以手動進行這四個步驟。
第一步:預處理。#號開頭的代碼全被解決掉(預編譯,包含庫,宏定義等等),產生一個后綴.i的文件以便下一步使用。
                gcc -E hello.c    (不會產生.i文件,文件內內容打印在了終端,所以需要將這些信息重定向到.i文件)
                gcc -E hello.c >> hello.i

第二步:編譯。這一步主要檢查語法錯誤。產生一個后綴.s的文件(匯編文件)
                gcc -S hello.i     (大寫字母S)

第三步:匯編。產生后綴.o的object目標文件,二進制,但不可以運行,因為缺少庫信息
                gcc -c hello.s

第四步:鏈接。添加庫信息,產生一個后綴.o的可執行文件
                gcc hello.o -o hello


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM