Linux入门基础操作(ubuntu20.04)(七)
gcc编译器的使用:
gcc 编译过程:
gcc xxx.c -o app
./app
拆分为:
gcc -E xxx.c -o xxx.i
gcc -S xxx,i -o xxx.s
gcc -c xxx.s -o xxx.o
gcc xxx.o -o app
./app
gcc xxx.c -I +头文件路径 -o app:添加头文件路径
gcc xxx.c -I +头文件路径 -o app -D +宏的名字: 编辑时定义宏
gcc xxx.c -I +头文件路径 -o app -D +宏的名字 -O3(O1/O2):优化冗余代码(O3最高等级)
gcc xxx.c -I +头文件路径 -o app -D +宏的名字 -O3(O1/O2) -Wall:添加警告信息
gcc xxx.c -I +头文件路径 -o app -D +宏的名字 -O3(O1/O2) -Wall -g:添加调试信息
静态库的制作与使用:
静态库的制作:
(1)命名规则
lib+库的名字+.a (libMytest.a)
(2)制作步骤
生成对应的.o文件:gcc xxx.c -c
将生成的.o文件打包:ar rcs +静态库名字 +生成的所有.o文件
(3)发布和使用静态库
发布静态库 和 头文件
示例:
文件目录结构如下:
终端执行命令:
头文件内容(head.h):
源代码内容(add.c):
执行代码内容(main.c):
静态库的优缺点:
优点:
(1)发布程序的时候不需要提供对应的库;
(2)加载库的速度快。
缺点:
(1)库被打包到应用程序中,导致库的体积很大;
(2)当库发生改变时,需要重新编译程序。