unix下动态库编译

2019-04-15 15:19发布

1 UnixWare
SCO 编译器创建 PIC 的标志是-KPIC GCC 是 -fpic. 链接共享库时 SCO 编译器用 -G 而 GCC 用-shared.

cc -c foo.c
cc -G -o foo.so foo.o
cc -K PIC -g -o testso calllib.c

or

gcc -fpic -c foo.c
gcc -shared -o foo.so foo.o

linux 下编译动态库
gcc -fpic -c so.c
gcc -shared -o so.so so.o
gcc -o testso -ldl


编译带动态库函数的可执行程序时,如果所需要的动态库不在系统路径下,则在链接时必须使用绝对路径

2 informix 编译成动态库
2.1 esql -c demo.ec
2.2 cc -K PIC -c demo.c -I/usr/informix/incl/esql
2.3 cc -G -o demoso.so demo.o
使用范例:esql -o demotest demotest.c demo.so