C程序编译

C程序编译

一、C程序编译生命周期

C程序编译

二、GCC 常见命令

用例: gcc [options] file...
选项:
  -save-temps              不要删除中间文件。
  -E                       仅预处理; 不要编译、汇编或链接。
  -S                       仅编译; 不要组装或链接。
  -c                       编译和汇编,但不链接。
  -o <file>             指定输出文件名
  -std=<version>    指定编译版本,例:c99  c11
  -Wall  				参数用于显示所有的警告信息
  -g 						debug模式

GCC 默认编译过程:

C程序编译

三、常用命令

3.1 单文件

$ gcc hello.c -o hello

3.2 多文件

$ gcc *.c *.h -o ${name}

3.3 多目录多文件

$ gcc ${abs_files} -o ${name}

3.4 静态链接库

1.创建

$ gcc -c ${*.c} -o ${*.o}
$ ar rcs ${libname.o} ${*.o}

2.查看

// 查看文件
ar t ${lib_name}
// 查看函数原型
nm ${lib_name}

3.使用
写出相应的函数原型直接调用。

4.编译
编译时指定静态库名称与静态库路径
-I 头文件目录
-L lib目录
-l lib名称

$ gcc main.c -I ./include -L ./lib -l ${lib_name} 

3.5 动态链接库

  1. 创建
$ gcc -shared -fPIC -o ${libname}.so #{files}
  1. 使用
// 需指定lib目录,通常将静态库放到:/lib
$ gcc main.c -L/lib -l${libname} -I include

C程序编译

上一篇:vue 富文本编译器 vue-quill-editor


下一篇:leetcode 300 最长递增子序列