在/tmp下建立幾個檔案
如main.c tool.c tool.h
在裡面寫好原始碼
在/tmp下建立乙個名為makefile的檔案,
用來定義幾個 .c .h 檔案的執行順序,編譯,連線
寫法如下:
main:main.o mytool1.o mytool2.o (main是終極目標)
gcc -o main main.o mytool1.o mytool2.o -lm
main.o:main.c mytool1.h mytool2.h(冒號後面的是依賴)
gcc -c main.c -i. (命令規則)
mytool1.o:mytool1.c mytool1.h
gcc -c mytool1.c -i.
mytool2.o:mytool2.c mytool2.h
gcc -c mytool2.c -i.
clean:
rm -f main main.o mytool1.o mytool2.o
檢查是否安裝gcc : gcc -v
沒有則安裝:yum -y install gcc c++ kenel-devel
檢查安裝: which gcc
[root@xx tmp]#make
[root@xx tmp]#ll 發現多了幾個 .o 檔案
和乙個可執行檔案main(靠這個執行程式)
[root@xx tmp]#./main 出結果
在linux下編譯執行C 程式
頭一回。把windows下的程式挪到linux下,見這篇隨筆 1 編譯zthread,使用.configure失敗,直接編譯的,方法還是上面提到的那篇隨筆 2 編譯原始碼,最開始用的cc,後來老是報undefined reference,甚至hello world程式也報undefined refe...
Linux下編寫執行C語言程式
1.gcc 1.c o 1.out 1.out命名 2.gcc lm 1.c a.out使用math.h中宣告的庫函式還有一點特殊之處,gcc命令列必須加 lm選項,因為數學函式位於libm.so庫檔案中 這些庫檔案通常位於 lib目錄下 lm選項告訴編譯器,我們程式中用到的數學函式要到這個庫檔案裡...
使程式在Linux下後台執行
一 為什麼要使程式在後台執行 我們計算的程式都是週期很長的,通常要幾個小時甚至乙個星期。我們用的環境是用 putty 遠端連線到日本 linux 伺服器。所以使程式在後台跑有以下三個好處 1 我們這邊是否關機不影響日本那邊的程式執行。不會像以前那樣,我們這網路一斷開,或一關機,程式就斷掉或找不到資料...