centos 聯(lián)合編譯動態(tài)連接庫詳解
么是動態(tài)鏈接庫
Windows上是dynamic linklibrary (DLL),后綴?xxx.dll
UNIX或Linux上是Shared Library .后綴是 xxx.so
將文件編譯成.so格式的動態(tài)鏈接庫
gcc -o libme.so wso.c -shared
將wso.c編譯成 libme.so 庫名為me
lib so為前綴跟后綴
聯(lián)合編譯
gcc -L /root/myc/ -l me ws.c -o newws
-L 動態(tài)鏈接庫的文件夾位置
-l 動態(tài)鏈接庫的庫名 (去除最前面的lib和.so就是庫名)
接下來你會發(fā)現(xiàn)編譯成功了,但是運(yùn)行依然失敗
失敗原因是操作系統(tǒng)無法找到
其實Linux和windows一樣,有個類似system32的系統(tǒng)庫文件夾。各種公共類庫都放于此
CentOS中有和windows很類似的兩個存放公共庫的文件夾
/lib 內(nèi)核級
/usr/lib 用戶系統(tǒng)級
/usr/lib64/ 64位系統(tǒng)才有
你要把你做好的庫 瞎放也沒關(guān)系
解決方法
把我們做的SO文件拷貝到公共庫去(cp命令)
然后執(zhí)行l(wèi)dconfig (把動態(tài)庫緩存起來了。加了新玩意兒需要重新更新緩存)
運(yùn)行newws 成功
相關(guān)文章
- CentOS 5.5下如何編譯安裝新內(nèi)核?今天小編將為大家?guī)淼氖荂entOS 5.5下編譯安裝新內(nèi)核的方法!希望對大家會有幫助,有需要的朋友一起去看看吧2017-02-13
本文為大家具體的介紹如何在CentOS7系統(tǒng)下編譯安裝Mapnik?小編這里使用的是Master版本,Master版本需要glibc2.14+的支持,一起來看看吧2016-11-28- Linux中編譯CoreCLR,很多用戶不知道如何在CentOS上編譯并安裝Clang,本文將詳細(xì)介紹具體的步驟,希望可以幫助到大家2016-11-18
centos:/tmp不能運(yùn)行導(dǎo)致的安裝編譯錯誤問題解決方法
這篇文章主要介紹了centos:/tmp不能運(yùn)行導(dǎo)致的安裝編譯錯誤問題解決方法,需要的朋友可以參考下2016-08-25- 這篇文章主要介紹了CentOS內(nèi)核的編譯與安裝簡單示例分享,包括對Linux內(nèi)核的一些基本知識講解,需要的朋友可以參考下2015-10-27
在CentOS系統(tǒng)中編譯安裝Hiawatha服務(wù)器的教程
這篇文章主要介紹了在CentOS系統(tǒng)中編譯安裝Hiawatha服務(wù)器的教程,包括相關(guān)的PHP連接設(shè)置,需要的朋友可以參考下2015-06-29- 這篇文章主要介紹了CentOS下編譯安裝python包管理安裝工具pip教程,本文同時介紹了Ubuntu下apt-get安裝PIP的方法,需要的朋友可以參考下2015-02-09
CentOS 6.4下編譯安裝MySQL 5.6.14詳細(xì)步驟
CentOS 6.4下通過yum安裝的MySQL是5.1版的,比較老,那我們就通過源代碼安裝高版本的MySQL5.6.14。2013-10-24- 一些朋友反饋說不知道CentOS下如何添加動態(tài)鏈接庫?今天小編將為大家?guī)鞢entOS下添加動態(tài)鏈接庫的方法,希望可以幫助到大家,有需要的朋友一起去看看吧2016-12-30

CentOS如何設(shè)置網(wǎng)卡成DHCP動態(tài)獲取IP?
很多朋友反饋說不知道CentOS如何設(shè)置網(wǎng)卡成DHCP動態(tài)獲取IP?今天小編將為大家?guī)鞢entOS設(shè)置網(wǎng)卡成DHCP動態(tài)獲取IP的方法,一起去看看吧2016-12-23



