Linux编译.so文件,调用.so文件

首先使用下面指令生成libst.o

gcc -c -fPIC libst.c  //-f后面跟一些编译选项,PIC是其中一种,表示生成位置无关代码(Position Independent Code)

然后用

gcc -shared -fPIC -o libst.so libst.o

生成 libst.so 动态链接库。

把libst.so拷贝到系统默认库目录下,比如 /lib, /usr/lib 下。假定你有 test.c 要引用这个库,使用

gcc -lst -o test test.c

然后就可以了;

假如不能把libst.so拷贝到默认库目录下,比方说放在了/home/aaa/lib 下,那么就用这样的语句来编译test.c

gcc -L/home/aaa/lib -lst -Wl,-rpath=/home/aaa/lib -o test test.c

你可能感兴趣的:(linux,gcc)