您的位置:首页 > 运维架构 > Linux

linux平台下静态库的创建和使用

2014-04-17 11:23 218 查看
linux平台下静态库的创建和使用

一、步骤
gcc -c mylib.c 
//生成mylib.o文件
ar cr libmylib.a mylib.o
//生成libmylib.a
export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH
//将当前路径添加到环境变量中
gcc -o main.out main.c -L. -lmylib
//生成可执行文件

当我们生成.a的库文件后,gcc编译器是找不到我们自己写的.a文件的,所以我们需要将路径添加到一下两个路径中。
方法有两种:
1.可以把当前路径加入 /etc/ld.so.conf中然后运行ldconfig,或者以当前路径为参数运行ldconfig(要有root权限才行)。

2.把当前路径加入环境变量LD_LIBRARY_PATH中

当然,如果你觉得不会引起混乱的话,可以直接把该库拷入/lib,/usr/lib/等位置(无可避免,这样做也要有权限),这样链接器和加载器就 都可以准确的找到该库了。

我们采用第二种方法:

export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH

二、测试代码
//mylib.c
#include <stdio.h>

void hello();

void hello()

{

printf("this is hello_lib!\n");

return ;

}

//main.c
#include <stdio.h>

void main()

{

    hello();

    return;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: