【原创】设置头文件路径, gcc -I 选项写法
来源:互联网 发布:python获取交集 编辑:程序博客网 时间:2024/04/30 13:30
网上关于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
呢种方法 没有使用gcc -I , 但系当file2.h的路径改变的话, 要同时维护makefile 和 file1.c file2.c 文件.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
===============================================================================================
第二种写法:
//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
呢种方法采用-I选项, 但只需维护makefile 1个文件。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.oclean:
rm *.o
- 【原创】设置头文件路径, gcc -I 选项写法
- gcc 头文件搜索路径
- gcc 头文件查找路径
- GCC选项——不使用默认系统库函数及不搜索默认头文件路径
- GCC编译选项-包含的头文件
- GCC编译选项,包含的头文件
- 指定GCC的默认头文件路径
- linux gcc 头文件搜索路径
- linux gcc 头文件搜索路径
- gcc编译中头文件路径指定
- gcc默认头文件搜索路径
- gcc如何获取系统头文件路径
- gcc编译器搜索头文件路径
- GCC预处理时头文件搜索路径
- linux gcc头文件搜索路径
- gcc -l参数和-L参数(编译时头文件路径和库文件路径的设置相关)
- gcc中使用 -I 和 -L 引入外部头文件和库文件时路径的搜索次序
- gcc中使用 -I 和 -L 引入外部头文件和库文件时路径的搜索次序
- [转]virtualbox下安装增强工具简单步骤
- [转]Linux C语言头文件搜索路径
- 【转】makefile写法2
- 【转】 ubuntu adduser 命令学习
- 【转】Linux添加/删除用户和用户组
- 【原创】设置头文件路径, gcc -I 选项写法
- 呢篇唔系教程 -- 记录自己第一次Android刷机
- crontab 和 at 的简单区别和用法
- 安装和配置sendmail
- grep 用法介绍
- 学习笔记:文本过滤_____unix 下的通配符
- ubuntu 10.10 配置 tomcat6
- [转]技巧:Vim 的纵向编辑模式
- 转:初学者简易 .vimrc编写指南