首先開啟命終端(alt+ctrl+t),用vim編寫三個檔案main.c, stack.c, stack.h
main.c
#include
#include"stack.h"
void main()
stack.h
typedef struct stack stack;
extern void push(stack *stack, int elem);
extern void pop(stack *stack, int *elem);
stack.c
#include
#include"stack.h"
void push(stack *stack, int elem)
void pop(stack *stack, int *elem)
這三個檔案都在同一資料夾下面,這時可以使用命令:gcc main.c stack.c stack.h -o mian直接在命令列中編譯,但是為了學習使用makefile 就寫了乙個檔案用於編譯
makefile檔案:
main: main.o stack.o
gcc main.o stack.o -o main
main.o: main.c stack.h
gcc -c main.c
stack.o: stack.c stack.h
gcc -c stack.c
這樣直接在終端中執行make就可以進行編譯了...
如果編譯的檔案不在同一資料夾下面,則在makefile檔案中寫明原始檔的路徑即可...
推薦閱讀:
c++ 隱式類型別轉化 implicit class-type conversions
c語言變長陣列之剖析
c語言需要注意的問題
c語言位域的使用及其注意點
c語言中簡單的for迴圈和浮點型變數
C語言 linux 下多檔案編譯
在linux下,用命令編譯 使用 gcc c file.c 命令會生成乙個相應的 file.o。編譯完所有的.c檔案之後,使用命令 gcc a.o b.o c.o o main 會在當前目錄下生成乙個linux可執行檔案 再使用 main 命令即可執行該c程式 以之前的簡單鍊錶為例 root izw...
C語言多檔案編譯
學習c語言的時候,有時候前面寫的函式希望以後可以直接呼叫,而不用重寫。記錄上午學習的成果,希望對有同樣需求的新手有幫助 要在乙個原始檔中呼叫另乙個源文中的函式,需要先把那個函式包含進來即使用 include。例如 現需要在show.c中呼叫display 函式,可以將 分開寫在三個檔案中,分別是sh...
Linux下C多檔案編譯Makefile
第一 makefile檔案編寫 1.第乙個字母大寫,其餘的都是小寫。2.makefile關係到了整個工程的編譯。3.可以執行作業系統的命令。4.其實makefile的本質是定義了檔案之間的依賴性問題。5.第乙個字母大寫,其餘的都是小寫。make命令執行時,需要乙個 makefile 檔案,以告訴ma...