C++工程师面试宝典系列之Linux编程之GCC编译工具实践
2017-02-12 11:47
435 查看
1.gcc简介
名称:
--GNU Compiler Collection
管理与维护:
--GNU项目
对C/C++编译的控制:
--预处理(Preprocessing)
--编译(Compilation)
--汇编(Assembly)
--链接(Linking)
2.gcc 的使用
基本使用格式:
$ gcc [选项] <文件名>
$ gcc -c <文件名> //只编译,不链接
$ gcc -E <文件名> //预编译:把所有的头文件编译和宏替换,生成一个完整的代码包
$ gcc -S <文件名> //只编译,不汇编
$ gcc -g <文件名> //生成调试信息
3.gcc多文件编译
cpp文件用g++进行编译;
$ g++ <文件名1> ../<文件路径名和文件名2> -o <生成文件路径> -l.. /<头文件路径>
4.linux静态库编译
$ldd <文件名> //查看所有引用到的动态链接库
$g++ <文件名> -o <生成路径> -static //静态编译
缺点:编译时间过长
5.Linux gcc动态库编译和调用
$g++ <文件名> -fpic -shared -o lib库名.so
名称:
--GNU Compiler Collection
管理与维护:
--GNU项目
对C/C++编译的控制:
--预处理(Preprocessing)
--编译(Compilation)
--汇编(Assembly)
--链接(Linking)
2.gcc 的使用
基本使用格式:
$ gcc [选项] <文件名>
$ gcc -c <文件名> //只编译,不链接
$ gcc -E <文件名> //预编译:把所有的头文件编译和宏替换,生成一个完整的代码包
$ gcc -S <文件名> //只编译,不汇编
$ gcc -g <文件名> //生成调试信息
3.gcc多文件编译
cpp文件用g++进行编译;
$ g++ <文件名1> ../<文件路径名和文件名2> -o <生成文件路径> -l.. /<头文件路径>
4.linux静态库编译
$ldd <文件名> //查看所有引用到的动态链接库
$g++ <文件名> -o <生成路径> -static //静态编译
缺点:编译时间过长
5.Linux gcc动态库编译和调用
$g++ <文件名> -fpic -shared -o lib库名.so
相关文章推荐
- C++工程师面试宝典系列之Linux编程之GCC编译工具实践
- APUE [Linux C 编程开发环境(工具链,编译,汇编,链接,库)基础知识与实践]
- linux嵌入式编程高手历程系列13-安装缺陷管理工具bugzilla
- [Linux]C++编程工具
- Linux下编程工具的使用(6) - VIM编辑器系列(2) - Vi Quick Reference
- 安装交叉编译工具 arm-linux-gcc-3.4.1
- 交叉编译工具arm-linux-gcc&arm-elf-gcc下载地址全集
- 关于arm-linux-gcc交叉编译工具链,实现自己的crt0或者编译UBOOT出现undefined reference to `__aeabi_unwind_cpp_pr0'的解决方法
- Linux下C语言编程的-编译命令gcc的使用
- Ubuntu 安装arm-linux-gcc交叉编译工具
- linux配置C,C++编译环境系列一之环境配置
- G++ 编译 C++ 方法以及 Linux 编程环境
- [Linux]C++编程工具
- Ubuntu9.04下安装arm-linux-gcc交叉编译工具的摸索
- Ubuntu 安装arm-linux-gcc交叉编译工具
- linux嵌入式编程高手历程系列2-安装debian并建立嵌入式编译环境
- 使用uclibc的buildroot制作交叉编译工具链 ,arm-linux-gcc
- 编译ARM-Linux-Gcc工具链!
- Ubuntu 9.04安装arm-linux-gcc交叉编译工具
- Fedora 9 安装交叉编译工具arm-linux-gcc-4.3.2【转】