linux的常用操作——共享库
生活随笔
收集整理的這篇文章主要介紹了
linux的常用操作——共享库
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.共享庫的命名規則
\qquad共享庫,即動態庫。庫名: lib+庫名+.so
2.共享庫的制作
2.1生成與位置無關的.o文件
gcc -fpic -c filename.c -I 頭文件路徑2.2生成共享庫
gcc -shared -o 共享庫名 要打包的.o文件 -I 頭文件路徑2.3生成可執行文件
gcc filename.c 動態庫路徑/庫名 -o 可執行文件名 -I 頭文件路徑3.動態庫無法被加載
\qquad查看可執行文件動態庫加載情況
ldd 可執行文件\qquad 需要找動態連接器的配置文件 ld.so.conf
sudo vim /etc/ld.so.conf\qquad 動態庫的絕對路徑寫到配置文件中
\qquad 更新——sudo ldconfig
4.動態庫實例
生成與位置無關的.o文件
zhaoxr@zhaoxr-ThinkPad-E450:~/linux/lib$ gcc -fpic -c mul.c add.c -I ../head/ zhaoxr@zhaoxr-ThinkPad-E450:~/linux/lib$ tree . ├── add.c ├── add.o ├── mul.c └── mul.o0 directories, 4 files生成動態庫
zhaoxr@zhaoxr-ThinkPad-E450:~/linux/lib$ gcc -shared -o libmylib.so mul.o add.o -I ../head/ zhaoxr@zhaoxr-ThinkPad-E450:~/linux/lib$ tree . ├── add.c ├── add.o ├── libmylib.so ├── mul.c └── mul.o0 directories, 5 files5. 動態庫的優缺點
\qquad優點:執行程序的體積小;動態庫更新了,不需要重新編譯程序。
\qquad缺點:發布程序時,需要把動態庫提供給用戶;動態庫沒有加載到應用程序中,所以加載速度會比靜態庫慢一些。
總結
以上是生活随笔為你收集整理的linux的常用操作——共享库的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机网络——物理层设备
- 下一篇: linux 其他常用命令