亚洲欧美精品沙发,日韩在线精品视频,亚洲Av每日更新在线观看,亚洲国产另类一区在线5

<pre id="hdphd"></pre>

  • <div id="hdphd"><small id="hdphd"></small></div>
      學(xué)習(xí)啦>學(xué)習(xí)電腦>操作系統(tǒng)>Linux教程>

      linux編譯命令大全

      時間: 佳洲1085 分享

        linux下編譯不同程序用到的命令也是不同,編譯程序的命令不在少數(shù),下面由學(xué)習(xí)啦小編為大家整理了linux編譯命令大全的相關(guān)知識,希望大家喜歡!

        linux編譯命令大全1.gcc

        假設(shè)源程序文件名為test.c。

        1. 無選項編譯鏈接

        用法:gcc test.c

        作用:將test.c預(yù)處理、匯編、編譯并鏈接形成可執(zhí)行文件。這里未指定輸出文件,默認(rèn)輸出為a.out。

        2. 選項 -o

        用法:gcc test.c -o test

        作用:將test.c預(yù)處理、匯編、編譯并鏈接形成可執(zhí)行文件test。-o選項用來指定輸出文件的文件名。

        3. 選項 -E

        用法:gcc -E test.c -o test.i

        作用:將test.c預(yù)處理輸出test.i文件。

        4. 選項 -S

        用法:gcc -S test.i

        作用:將預(yù)處理輸出文件test.i匯編成test.s文件。

        5. 選項 -c

        用法:gcc -c test.s

        作用:將匯編輸出文件test.s編譯輸出test.o文件。

        6. 無選項鏈接

        用法:gcc test.o -o test

        作用:將編譯輸出文件test.o鏈接成最終可執(zhí)行文件test。

        7. 選項-O

        用法:gcc -O1 test.c -o test

        作用:使用編譯優(yōu)化級別1編譯程序。級別為1~3,級別越大優(yōu)化效果越好,但編譯時間越長。

        補(bǔ)充:linux編譯多源文件的方法

        如果有多個源文件,基本上有兩種編譯方法:

        [假設(shè)有兩個源文件為a.cpp,b.cpp,分別定義兩個類A和B,main.cpp包含A類和B類

        1. 多個文件一起編譯

        用法:gcc a.cpp b.cpp main.cpp -o main.o

        作用:將a.cpp、b.cpp和main.cpp分別編譯后鏈接成main.o可執(zhí)行文件。

        2. 分別編譯各個源文件,之后對編譯后輸出的目標(biāo)文件鏈接。

        用法:gcc -c a.cpp -o a.o //將a.cpp編譯成a.o

        gcc -c b.cpp -o b.o //將b.cpp編譯成b.o

        gcc -c main.cpp -o main.o //將main.cpp編譯成main.o

        gcc -a.o main.o -o main //將a.o、b.o和main.o鏈接成main可執(zhí)行文件

        以上兩種方法相比較,第一種方法編譯時需要所有文件重新編譯,而第二種方法可以只重新編譯修改的文件,未修改的文件不用重新編譯。

        3. 如果要編譯的文件都在同一個目錄下,可以用通配符gcc *.c -o 來進(jìn)行編譯。

      3610596