国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > CentOS > 正文

centos 聯合編譯動態連接庫詳解

2020-07-08 12:41:57
字體:
來源:轉載
供稿:網友

么是動態鏈接庫

Windows上是dynamic linklibrary (DLL),后綴?xxx.dll 

UNIX或Linux上是Shared Library .后綴是 xxx.so

將文件編譯成.so格式的動態鏈接庫

gcc -o libme.so wso.c -shared 

將wso.c編譯成 libme.so 庫名為me 

lib so為前綴跟后綴

聯合編譯

gcc -L /root/myc/ -l me ws.c -o newws 

-L 動態鏈接庫的文件夾位置 

-l 動態鏈接庫的庫名 (去除最前面的lib和.so就是庫名) 

接下來你會發現編譯成功了,但是運行依然失敗

失敗原因是操作系統無法找到

其實Linux和windows一樣,有個類似system32的系統庫文件夾。各種公共類庫都放于此 

CentOS中有和windows很類似的兩個存放公共庫的文件夾 

/lib 內核級 

/usr/lib 用戶系統級 

/usr/lib64/ 64位系統才有 

你要把你做好的庫 瞎放也沒關系

解決方法

把我們做的SO文件拷貝到公共庫去(cp命令) 

然后執行ldconfig (把動態庫緩存起來了。加了新玩意兒需要重新更新緩存) 

運行newws 成功

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 无锡市| 来宾市| 民丰县| 昌平区| 革吉县| 丰都县| 平南县| 澄江县| 奉化市| 绍兴市| 漳浦县| 资溪县| 湘潭县| 都匀市| 安龙县| 五家渠市| 叶城县| 河北区| 东明县| 黑龙江省| 万安县| 固安县| 红安县| 鹤庆县| 多伦县| 齐河县| 上犹县| 黄大仙区| 赫章县| 宽甸| 合江县| 镇远县| 南阳市| 兴化市| 抚宁县| 资中县| 衡东县| 固始县| 林州市| 石棉县| 乌兰察布市|