首页 > 其他 > 详细

C程序编译

时间:2021-09-02 00:35:12      阅读:17      评论:0      收藏:0      [点我收藏+]

C程序编译

一、C程序编译生命周期

技术分享图片

二、GCC 常见命令

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

GCC 默认编译过程:

技术分享图片

三、常用命令

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程序编译

原文:https://www.cnblogs.com/chen-jia-cheng/p/15208577.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!