【C语言】g++常用编译选项备忘
2015-12-28 21:52
369 查看
g++常用编译选项小结
不加参数: gcc test.c 生成可执行文件 a.out(默认生成可执行文件)
-o : 生成指定的文件名 (例子: gcc -o test test.c , 生成可执行文件 test )
-c : 生成目标文件 (例子: gcc -c test.c , 生成目标文件 test.o )
-c -o : 生成指定文件名的目标文件 (例子: gcc -c -o hello.o test.c , 生成目标文件 hello.o )
一条命令可以编译多个源文件生成目标文件:
gcc -c test1.c test2.c 将生成 test1.o test2.o
多个源文件编译成一个执行文件:
gcc -o test test1.c test2.c 将生成 test
先生成目标文件,再连接成可执行文件:
gcc -c test1.c test2.c 将生成 test1.o test2.o
gcc -o test test1.o test2.o 将生成 test
其他:
-E: 进行预编译
-S: 编译成汇编语言
-Wno-deprecated: 用于忽略头文件信赖的警告
打包成静态链接库:
ar -rcs libstr.a string.o –> 把string.o打包为库文件libstr.a
使用静态链接库:
gcc -o test main.c libstr.a
或者:
gcc -o test main.c -l str (str为库名,它不包含函数库lib和扩展名.a, -l链接的库名要在-o的目的名称之前)
显式指定链接函数库的路径: gcc -o test main.c -L ./ -l str (路径为当前目录)
动态链接库的使用跟静态链接库一样。
相关文章推荐
- HDU5601:N*M bulbs
- 【C++】深度探索C++对象模型之构造、析构、拷贝语意学
- 绘制Android机器人(c语言)
- C语言中#define的用法
- 神一般的C语言指针,你看懂多少?
- 彻底搞定C语言指针详解
- 实战c++中的智能指针unique_ptr系列-- unique_ptr与lambda的错误结合(尤其是捕获lambda中的unique_ptr)
- 实战c++中的智能指针unique_ptr系列-- unique_ptr与lambda的错误结合(尤其是捕获lambda中的unique_ptr)
- Notepad++配置c++、python、java与C#
- C语言: 贪吃蛇异常退出
- Check—强大的C语言单元测试框架
- c++ 静态成员变量
- c++ inline函数
- c++中文件的读写(从一个文件读到另一个文件)
- C++中的单例模式
- C++ 类模板和模板类
- C++本质:类的赋值运算符=的重载,以及深拷贝和浅拷贝
- C++输出的精度控制
- c/c++里的 堆区 栈区 静态区 文字常量区 程序代码区(二)
- c/c++里的 堆区 栈区 静态区 文字常量区 程序代码区