日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【原创】设置头文件路径, gcc -I 选项写法

發布時間:2025/3/20 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【原创】设置头文件路径, gcc -I 选项写法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
網上關于gcc -I 的教程好少,試左成晚終于試左出來。
假如系目錄 ~/testmake/下面有2個c文件同1個makefile: file1.c file2.c Makefile系另個目錄 ~/testmake/headfiles/ 有1個頭文件: file2.h
其中file2.h內容為:

#ifndef __FILE2_H_#define __FILE2_H_? ? ? ?void File2Print();#endif


即系頭文件同埋c文件唔系同1個目錄, 有兩種寫法:
===============================================================================================第一種寫法://file1.c

#include <stdio.h>#include "./headfiles/file2.h" ? ? //注明路徑
int main(){? ? ? ? printf("print file1$$$$$$\n");? ? ? ? File2Print();? ? ? ? return 0;}


//file2.c

#include <stdio.h>#include "./headfiles/file2.h" ? ? //注明路徑
void File2Print(){? ? ? ? printf("Print file2**********\n");
}


//Makefile

helloworld: file1.o file2.o
gcc file1.o file2.o -o helloworld

file1.o: file1.c ./headfiles/file2.h
gcc -c file1.c -o file1.o

file2.o: file2.c ./headfiles/file2.h
gcc -c file2.c -o file2.o

clean:
rm *.o

呢種方法 沒有使用gcc -I , 但系當file2.h的路徑改變的話, 要同時維護makefile 和 file1.c file2.c 文件.


===============================================================================================第二種寫法:
//file1.c

#include <stdio.h>#include "file2.h" ? ? //<file2.h> 也可
int main(){? ? ? ? printf("print file1$$$$$$\n");? ? ? ? File2Print();? ? ? ? return 0;}


//file2.c

#include <stdio.h>#include "file2.h" ? ? //<file2.h> 也可
void File2Print(){? ? ? ? printf("Print file2**********\n");
}


//Makefile

helloworld: file1.o file2.o
gcc file1.o file2.o -o helloworld

file1.o: file1.c //不需要指明依賴的file2.h 前提是file2.h這個文件存在于./headfiles/ ,而不能是其他名字.
gcc -c file1.c -I ./headfiles/ -o file1.o //加上-I 選項


file2.o: file2.c
gcc -c file2.c?-I ./headfiles/ -o file2.o

clean:
rm *.o

呢種方法采用-I選項, ?但只需維護makefile 1個文件。

總結

以上是生活随笔為你收集整理的【原创】设置头文件路径, gcc -I 选项写法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。