linux 编程学习笔记--编译多个文件
来源:互联网 发布:数据打点是什么意思 编辑:程序博客网 时间:2024/05/01 09:40
把学的东西记下来,复习
假设有三个文件:
main.c su.c su.h
内容分别为
#include <stdio.h> int sum(int a,int b); int sum(int a,int b){
#include "sub.h" return a+b;}
void main(void){
int a=10,b=30;
fprintf(stdout,"%d\n",sum(a,b));
}
对三个文件进行编译中,因为有头文件,注意写完后进行保存,当文件名出现*时,说明没有保存
gcc -c -o main.o main.c
gcc -c -o sub.o sub.c
gcc -o test main.c sub.c
生成test文件, ./test 进行执行
$gcc -S -o main.s main.c ,对main.c进行预处理,并将结果打印出来,里面扩展了所有包含的文件、所有定义的宏。
另一种方式:不想以源代码发布程序时,可以使用-shared选项生成库文件。
$gcc -c -o sub.o sub.c
$gcc -shared -o sub.a sub.o
若要使用 sub.c 中包括的函数时,只需要
$gcc -o test main.o ./sub.a
也可以用简单的编译
gcc main.c sub.c -o main
执行./main即可
写成makefile文件:(文件名为makefile)
main:main.o sub.o
gcc main.c sub.c -o main
main.o:main.c sub.h
gcc main.c -o main.o
sub.o:sub.c sub.h
gcc sub.c -o sub.o
clean:
rm -f main *.o
执行时:直接用make 会在文件中需要Makefile文件
make clean 执行动作
- linux 编程学习笔记--编译多个文件
- Linux编译多个文件
- Linux编译多个文件
- 【Linux学习笔记】gcc编译单个文件
- linux编程学习笔记(七) 文件IO
- linux下编译多个文件
- linux编程学习笔记(四) 编译工具和动态库
- 学习笔记 linux 编译文件用shell脚本实现
- Linux select学习笔记(附:监测多个文件描述符状态的例子)
- Linux学习笔记——例说makefile 多个文件
- Linux select学习笔记(附:监测多个文件描述符状态的例子)
- Linux学习笔记之Makefile多个c文件的编写
- Linux学习笔记——例说makefile 多个文件
- LINUX学习笔记2——文件编程
- linux下c/c++编程--学习笔记(头文件)
- LInux 编程基础学习笔记 持续ing 文件读写
- linux编程学习笔记(八) 文件 定位 lseek pread pwrite
- 嵌入式Linux学习笔记第三天(文件编程)
- 多线程学习笔记(一)之线程创建与线程状态
- 协同过滤算法+相似度度量+交替最小二乘法
- 水平居中垂直居中
- Html5 文档类型和头部信息介绍
- Makefile经典教程(掌握这些足够)
- linux 编程学习笔记--编译多个文件
- CSS中font-style的属性斜体Italic oblique的区别
- Linux(C/C++)下的文件操作open、fopen与freopen
- regex 正则表达式 需要转义的特殊字符 以及 java、python实现
- Visual Studio-VS中添加WSDL生成代理类工具
- ActiveMQ 与spring整合使用
- jsTree 使用笔记
- 通过onvif协议接入海康、大华NVR步骤
- oracle 基础--重新配置dbcontrol