java 如何使用dylib_如何在Mac OSX 中制作dylib和使用dylib?

如何在Mac OSX 中制作dylib和使用dylib

1.首先是构建一个函数库

编辑add.c

int add(int a,int b)

{

return a+b;

}

int axb(int a,int b)

{

return a*b;

}

保存

其中两个函数  add axb

这是简单的写的,复杂的自己开发,这里主要介绍方法

2.编译函数库

gcc -c add.c -o add.o

//下面是linux系统时

ar rcs libadd.a add.o

//如果你是linux 就用这种库

//下面是Mac OSX

gcc add.o -dynamiclib -current_version 1.0 -o libadd.dylib

得到 libadd.dylib

3.编辑testadd.c

#include

#include

#include

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

{

int a,b;

a=10;

b=9;

int c;

c=add(a,b);

printf(“%d\n”,c);

return 1;

}

保存

4.编译testadd.c

gcc testadd.c -o testadd -L. -ladd

./testadd

输出19

5.编辑dladd.c

#include

#include

#include

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

{

int *ab;

void *h=dlopen(“./libadd.dylib”,RTLD_LAZY);

ab=dlsym(h,“add”);

printf(“add=address is 0x %x\n”,ab);

dlclose(h);

return 1;

}

这个是为了查看函数库在库中的地址的

6.编译dladd.c

gcc dladd.c -o dladd -ldl

./dladd

add=address is 0x 23fe2

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:游动-白 设计师:我叫白小胖 返回首页
评论

打赏作者

周不润

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值