linux创建函数库

GCC创建函数库:

假设用户函数为myfun.c,要生成libmy.so,则使用:

gcc -shared -fPIC -Wmyfun.c -o libmy.so

有关参数含义:

-shared-------编译产生共享库

-fPIC---------在编译产生共享库时作一些优化,可以不加

-W------------输出警告信息,可以不加

-o------------设定输出文件名(库名)

使用刚才生成的库libmy.so,使用下面的命令:

gcc myfun1.c -o myfun1 -lmy

-l 表示要连接的库。

库的存放路径:一般共享库都存放在/lib/usr/lib目录下可以找到。有一些库可以在/etc/ld.so.conf

配置文件中有这些目录的列表。GCC在默认的情况下,将只在/etc/ld.so.conf中指定的目录下寻找库。

例:

产生库的代码(fun1.c

#include<stdio.h>

void ptr(char *str)

{

    printf("%s\n",str);

}

 

命令:

gcc -shared -fPIC -W myfun.c -o libmy.so

并将libmy.so拷贝到/lib

 

要引用这个库的程序(fun2.c

extern void ptr(char *)

int main(int argc,char *argv[])

{

    ptr("Ilove you,china");

}

 

命令:

gcc fun2.c -o fun2 -lmy

执行:./fun2后输出I love youchina

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值