Chinaunix首页 | 论坛 | 博客
  • 博客访问: 344924
  • 博文数量: 201
  • 博客积分: 305
  • 博客等级: 二等列兵
  • 技术积分: 500
  • 用 户 组: 普通用户
  • 注册时间: 2012-11-30 16:58
文章分类

全部博文(201)

文章存档

2015年(5)

2014年(12)

2013年(173)

2012年(11)

我的朋友

分类:

2012-12-30 19:06:35

    函数库分为静态库和动态库两种。静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。
使用 gcc 创建和使用静态库:
简单地说,静态库是一个目标文件的简单集合,因此,首先要解决目标文件。
gcc -c hello.c 生成 hello.o

由ar(archive,归档的意思)把多个目标文件集合起来。
ar cr libhello.a hello.o  (cr 告诉 ar 将 object 文件封装到 libhello.a)

其他函数使用该静态库
gcc -o main main.c -L../lib -lhello
-L 指定 lib 的搜索路径,-l 指定了链接库的名字

使用 gcc 创建和使用动态库:

gcc -c hello.c 生成 hello.o
-fPIC 告诉 gcc 将源码编译成共享的 object文件,PIC(Position-Independent Code) 位置独立代码

gcc -shared -fPIC -o libhello.so hello.o


其他函数使用该静态库
gcc -o main main.c -L../lib -lhello
-L 指定 lib 的搜索路径,-l 指定了链接库的名字


                       ——忠于梦想 勇于实践    linux_xpj@opencores.org
阅读(554) | 评论(0) | 转发(0) |
0

上一篇:嵌入式linux C语言入门

下一篇:字符串逆序

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