Linux动态库与静态库

来源:互联网 发布:jdk1.7 windows 64 编辑:程序博客网 时间:2024/05/17 23:37
1、生成.SO:
g++ test.cpp -fPIC -shared -o libtest.so
2、使用.SO:
g++ L. -ltest  main.cpp
在使用.SO的时候如果找不到.SO需要把.SO的路径加到/etc/ld.so.conf        ldconfig使之生效
ldd 可以查看MAIN中是否包含了.SO。
 
3、生成.A
ar -r libtest2.a test.o     (切记先将文件编译成.O的再用AR,否则会出意想不到的错误。)
4、使用.A
g++ -static  -L. -ltest2 main.cpp
 
动态库与静态库的区别
1、动态库比静态库要大的多,而编译完的文件,静态库要比动态库大。
2、动态库在执行时动态加载,所以比静态库速度稍逊。
原创粉丝点击