编译命令
- 编译静态库
gcc –c test.c #生成test.o
ar rcs libtest.a test.o #生成test静态库 - 连接共享库
./app –L/XX/XX/ libtest.a #-L指定libtest.a静态库的路径(可相对路径) - 编译共享库
gcc –c test.c
gcc -shared -fPIC -o libtest.so test.o 连接共享库
./app –ltest
export LD_LIBRARY_PATH= /opt/libcurl/lib:$LD_LIBRARY_PATH
#共享库路径为 存放libtest.so的路径
#或直接拷贝共享库到/lib/、/usr/lib目录下)查看共享库
ldd test 或者 ldd libtest.so #查看程序/共享库依赖的其他共享库
nm libtest.so #查看共享库中的符号表信息- 条件编译
针对代码如下:
make -DCNSU #ifdef CNSU
…
#endif - Make前配置
./configure –prefix=/opt #指定源码编译后make install的安装位置