猿问

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

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


ITMISS
浏览 1638回答 1
1回答

梦里花落0921

 如何在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 <stdio.h>  #include <stdlib.h>  #include <dlfcn.h>  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 <stdio.h>  #include <stdlib.h>  #include <dlfcn.h>  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
随时随地看视频慕课网APP

相关分类

Ruby
我要回答