GCC摘记
来源:互联网 发布:apache性能监控工具 编辑:程序博客网 时间:2024/04/29 19:32
一,GCC简称
GNU C Compiler -> GNU Compiler Collection表示现在可以支持多种语言
二,编译的四个阶段
GCC编译程序时,会经历四个阶段
- 预处理。
- 编译。
- 汇编。
- 链接。
三,引入头文件搜索目录
- 默认。/usr/include 、 /usr/local/include 等。
- CXX_INCLUDE_PATH环境变量。这个和-I是有区别的。
- -I 选项。
四,链接库
链接库其实就是把很多.o文件打成一个包,生成一个库文件,另外LD_LIBRARY_PATH指定目录 ,
- -r 选项。
- -shared选项。指定生成动态库。
- -fPIC。编译为位置独立的代码,否则是位置相关的,此时共享代码可能失效。
动态库的搜索顺序如下:
- 编译目标代码时 ”-Wl,-rpath,” 指定的动态库搜索路径(当指定多个动态库搜索路径时,路径之间用冒号”:”分隔)。如,-L../xx -Wl,-rpath=../xx
- 环境变量 LD_LIBRARY_PATH 指定的动态库搜索路径。
- 配置文件 /etc/ld.so.conf 中指定的动态库搜索路径。
- 默认的动态库搜索路径 /lib,如果是64位系统还包括 /lib64。
- 默认的动态库搜索路径 /usr/lib,如果是64位系统还包括 /usr/lib64。
五,其它选项
- -Wall。输出更多警告信息。
- -pg。生成只有gprof才可以识别的时间调用统计信息。
- -ggdb。生成只有gdb可以调试的调试信息。
- -g。加入调试信息。
- -w 。 关闭所有警告信息。
六,待续
0 0
- GCC摘记
- GCC 使用摘记
- 编译器GCC/CLANG 使用摘记
- 摘记
- 摘记
- 摘记
- 饮食摘记
- C# 摘记
- 摘记1
- css摘记!!!
- 学习摘记
- 剪切摘记
- 架构摘记
- 心情摘记
- 项目摘记
- 书目摘记
- 前端摘记
- 小摘记
- Stanford机器学习---第一讲. Linear Regression with one variable
- nyoj(简单数学)Oh, my Paper!
- 反射的一些性质
- Linux下UDP的连接程序示例(阻塞、非阻塞)
- 我的常用的指令
- GCC摘记
- iPhone开发之NSLog使用技巧
- 三星s5开发者选项不能连电脑问题
- Android 从硬件到应用:一步一步向上爬 1 -- 从零编写底层硬件驱动程序
- net-snmp代理开发——自定义table实现
- Linux C 网络编程 - 获取本地 ip 地址,mac,通过域名获取对应的 ip
- Ajax请求中文乱码解决方案
- Cocos2d-x 3.2 大富翁游戏项目开发
- 电脑音频均衡器使用方法