共计 525 个字符,预计需要花费 2 分钟才能阅读完成。
编译
gcc -c main.c ==== 编译不链接,生成.o 目标文件
gcc -E main.c ==== 预处理
gcc -S main.c ==== 只编译不汇编
gcc -g main.c -o main_d ==== 可进行 gdb 调试
gcc -Dname='xinzhu' === 定义宏 define name 'xinzhu'
gcc main.c -o main -I../path
gcc main.c -o main -I../path -L../path
gcc -I [大写字母 i] 寻找头文件目录 /usr/local/include
gcc -L [大写字母 l] 寻找库文件 /usr/local/lib
gcc -l word [小写字母 l], 寻找动态链接库文件 libword.so
静态库 .a 结尾
# 创建.o 目标文件
gcc -c test.c -o libtest.o
#创建 libtest.a 静态库
ar rcs libtest.a libtest.o
#链接静态库
gcc -o test main.c -ltest
动态库 .so 结尾
# 使用位置无关代码创建目标文件
gcc -c -fPIC test.c -o test.o
# 创建共享库 libtest.so
gcc -shared -o libtest.so test.o
# 链接静态库
gcc -o test main.c -ltest
正文完