linux 环境下gcc参数详解
2012-11-08 13:45
330 查看
以最基本的一个helloworld程序为例,代码如下(hello.c): (其实下面这段代码没什么用处...) #include <stdio.h> void main() { int i = 0; while(i < 10) { printf("hello world !!\n"); i++; } return ; } 最基本的gcc编译方式为: gcc -o test hello.c - o 的意思是 指定编译生成的目标名称,那么上面编译的结果就是产生一个叫做hello的目标文件, 可以通过./hello执行,执行结果是输出10条hello world。如果没有-o参数,默认生成的是 .a 类型的文件 - c 的作用是:只是编译而不做链接。生成的是.o类型的文件。在大型项目里面,写makefile的时候会经常用到 这个选项,先把大量的源文件编译成.o类型的文件,在最后再链接到一起。- c 是无法指定生成的.o文件名称的。 - l 的作用是:包含指定的lib库文件。比如,在程序中用到了pthread,那么在编译的时候必须加上 -lpthread 选项,比如上面的程序,gcc -o test -lpthread hello.c。当然,上面的程序没有用到pthread,但是依然是 可以编译通过的。 与- l 配套的是- L选项,-L选项是指定库文件的路径,如果是自己生成的lib文件,同时lib文件放在别的目录底下 的话需要使用这个选项指定包含路径。 - Idir(需要跟单独的 -I 选项区分) 的作用是:添加一个include文件夹,编译时,会先去该文件夹查找需要的头 文件,如果没有,才回去系统默认文件夹查找需要的头文件。 如果要用到gdb调试器的话,那么有一个选项是必须的,那就是 - g,- g的意思是产生调试信息,当然-ggdb的话, 可能会生成更多gdb可用的调试信息,但其实是-g的一个子参数,如果没有定义-g选项,那么是无法使用gdb进行调试 的。 还有一个编译选项也是常用的,那就是 -w ,输出警告信息。gcc在编译时,有些情况下是不会打印警告信息的,如果想要 看到警告信息,那么这个参数是必须的。比如gcc -o hello -w hello.c 。 其他的参数,对我来说还不常用,等用到了再补充。
本文出自 “雨辰” 博客,请务必保留此出处http://20yuchen.blog.51cto.com/5082744/1053859
相关文章推荐
- linux GCC参数详解
- Linux下GCC编程四个过程&&参数详解
- Linux环境下的GCC工具链详解
- linux gcc参数详解
- linux export命令参数及用法详解--linux设置环境变量命令
- Linux set命令参数及用法详解--Linux设置环境变量命令
- Linux平台Makefile文件的编写基础篇和GCC参数详解
- linux export命令参数及用法详解--linux设置环境变量命令
- linux gcc参数详解
- linux export命令参数及用法详解--linux设置环境变量命令
- linux export命令参数及用法详解--linux设置环境变量命令
- Git 命令参数及用法详解 & Linux编程环境下版本控制 Git使用
- Apache编译参数详解(linux下手工通过源码编译apache)
- Linux patch命令参数及用法详解---Linux打补丁命令
- linux su命令参数及用法详解--linux切换用户命令
- linux 调优 Linux内核参数详解
- Linux环境下配置ADSL详解
- Linux下C程序设计(4)----操作环境变量 、程序传递参数getopt getopt_long操作、获取时间
- Linux iftop 安装与参数详解 【转】
- vmware虚拟机上Redhat5操作系统安装arm-linux-gcc 4.5.1交叉编译环境