Chinaunix首页 | 论坛 | 博客
  • 博客访问: 318524
  • 博文数量: 63
  • 博客积分: 2344
  • 博客等级: 大尉
  • 技术积分: 628
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-13 11:09
个人简介

有一种沉默叫霸气,有一种内敛叫个性,有一种简单叫深遂,有一种不屑叫自我

文章分类

全部博文(63)

文章存档

2013年(10)

2012年(12)

2011年(1)

2010年(9)

2009年(31)

分类: LINUX

2013-08-13 12:27:33

 

1 静态库编译

         生成目标: gcc -c xxx1.c xxx2.c xxx3.c

         归档:              ar     cqs   libxxx.a     xxx1.o       xxx2.o       xxx3.o

         指定静态库:gcc –static        -lxxx

2 动态库编译

         gcc   xxx1.c       xxx2.c       xxx3.c       -fPIC                   -shared    -o      libxxx.so

         gcc   -lxxx abc.c       -o      abc

3 Can not open shared object file解决办法:

出现该错误多是程序无法找到你所生成的库文件导致。

         a ln -s /where/your/xxx.so       /usr/lib     // so文件链接到程序能够加载到的地方

         b export   LD_LIBRARY_PATH=/where/your/:$LD_LIBRARY_PATH

         c 修改/etc/ld.so.conf,增加/where/your/路径

4 编译时传入宏定义

         gcc   -D     macro=string   //等价于#define macro  string

         gcc -D     macro                //等价于#define macro  1

5 反汇编命令

         objdump  -d      a.out

阅读(1283) | 评论(0) | 转发(0) |
0

上一篇:sprintf字符串输出

下一篇:shell小结

给主人留下些什么吧!~~