常用的gcc编译指令和操作
来源:互联网 发布:apache php 页面空白 编辑:程序博客网 时间:2024/06/03 16:56
gcc是一套工具链。
1将源码编译成.o 只编译不链接。
gcc -c output.o source.c
2执行链接
gcc -o output source.c obj1.o obj2.o obj3.o
gcc -o output source.o obj1.o obj2.o obj3.o
也可以用ld执行链接过程。但是必须都指定
ld -o output obj1.o obj2.o obj3.o -e entrypoint
-e指定入口点。实际上默认是_start
3将两个.o文件合并成一个.o
ld -r one.o another.o -o output.o
-r表示生成可重定位的.o文件
4由.o文件产生.a文件 使用ar命令
ar rc liboutput.a obj1 obj2 obj3 obj4
合并两个.a文件.方式是先解开再产生
ar x lib1.a
ar x lib2.a
ar rc liboutpu.a *.o
5使用.o文件产生 so
gcc -o liboutput.so -shared -fPIC obj1.o obj2.o obj3.o
-fPIC指定编译的是位置独立的代码.主要是使得多个实例能够共享一个so文件。减少内存占有量。
6链接时使用 *.a和链接时使用*.so文件
-L指定动态库的路径 -l指定动态库的名称
比如
gcc -o main -L./ -ltest
表示 去连接当前目录下的 libtest.so文件
静态库的话只需要末尾加上*.a文件
gcc -o main libtest.a
表示使用静态库libtest.a文件
阅读全文
0 0
- 常用的gcc编译指令和操作
- 学习linux之 gcc/g++常用的命令行编译指令
- gcc常见的编译指令
- GCC常用的编制指令
- git的常用操作指令和错误
- gcc和gdb常用操作
- gcc基本的使用方法及常用指令
- gcc基本的使用方法及常用指令
- SSE 指令 gcc编译
- gcc编译指令详解
- GCC常用的操作选项
- GCC编译器的常用操作
- linux操作的常用指令
- vi常用的操作指令
- PostgreSQL的常用操作指令
- Linux常用的操作指令
- Hadoop常用的操作指令
- Docker的常用操作指令
- 设计师都是美工?NO!网页设计 VS. 平面设计有区别!
- JavaScript立即执行函数的解释分析(3)—谈谈圆括号()
- http字节流转字符流的问题
- zabbix获取最近20个问题
- 得到验证码fun
- 常用的gcc编译指令和操作
- Android/IOS 复制字符串到剪贴板 粘贴功能
- 一种冥冥之中的命中注定
- elasticsearch java api 汇总
- Jquery/js 页面滚动到底部事件
- [ssh] 创建快捷链接方法
- [BZOJ 3811]玛里苟斯:线性基(详细证明)
- 文字处理控件TX Text Control .NET X14历史最大更新 | 附下载
- appium for android 查找元素方法总结