编译格式
编译器 -fPIC XXX.c -c
编译器 -shared XXX.o -o libxxx.so
或合起来 编译器 -fPIC -shared XXX.c -o libxxx.so
注意用的时候
-L 是库的路径 -l跟库,如果是libxxx.so 就是 -lxxx 如果库名是libxxx.so.x.x 就不可以这样调用了
调用的时候可以直接在后面跟路径,如 ./libxxx.so.x.x
EX:
gcc test.c -o test ./libtest.so.1
gcc test.c -o test -L./ -ltest
尽量直接在后面跟路径,这样出错概率较小。不同编译器编译出来的库可能不能调用,我用arm-linux-gcc编译出来的库,用arm-linux-g++调用就会报找不到库(我加了extern“C”)
DLL的调用。
静态调用:(VS环境下)
将dll与lib文件与头文件都拷贝到当前目录下,在项目属性中,选择连接器,附加库目录中添加库的路径
在主程序前加入代码
#pragma once
#pragma comment(lib,"xxx.lib")
#include</