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

首頁(yè) > 系統(tǒng) > Linux > 正文

整理linux編譯link出undefined reference’dlclose’錯(cuò)誤解決辦法

2024-08-27 23:58:52
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

最近因?yàn)閾Q工作又開始搞Linux服務(wù)器了,現(xiàn)在編譯link的時(shí)候,出現(xiàn)“undefined reference’dlclose@xxx函數(shù)’”錯(cuò)誤,現(xiàn)在我把解決這個(gè)錯(cuò)誤的方法整理如下.

對(duì)于linux我持中立態(tài)度,而且我認(rèn)為linux這么多年發(fā)展比較慢的原因是因?yàn)樽烂婊龅牟缓没蛘卟粔蚝?所以我比較偏愛(ài)ubuntu.

由于以前項(xiàng)目是makefile的,我個(gè)人不是很喜歡makefile,因?yàn)樗雌饋?lái)比較費(fèi)勁,而且編譯完成后出現(xiàn)問(wèn)題調(diào)試是個(gè)大難題,不是每個(gè)人都精通gdb,而且vi上手比較難,所以將工程轉(zhuǎn)為codeblocks的cbp,本來(lái)想使用cmake的,但是覺(jué)得要寫的比較多,于是作罷,畢竟代碼不是跨平臺(tái)的,windows下沒(méi)法用.

編譯完link的時(shí)候,報(bào)了一句undefined reference’dlclose@xxx函數(shù)‘,不知道什么問(wèn)題了,找主程過(guò)來(lái)看了下,說(shuō)是dl庫(kù)沒(méi)有包進(jìn)去,查了下dl庫(kù)是用來(lái)做動(dòng)態(tài)庫(kù)加載的(dynamic load),項(xiàng)目用到了libmysqld.so,加了之后還是有問(wèn)題,將-ldl鏈接選項(xiàng)改到最后才可以.

總結(jié)了下這些比較常見的undefined reference問(wèn)題:

1.dl庫(kù)

  1. undefined reference to ‘dlerror’ 
  2. undefined reference to ‘dlopen’ 
  3. undefined reference to ‘dlerror’ 

增加-ldl鏈接選項(xiàng) (-l是鏈接選項(xiàng)的前綴)

2.pthread庫(kù)

  1. undefined reference to ‘pthread_create’ 
  2.  --Vevb.com
  3. undefined reference to ‘pthread_xxxx‘ 

增加-lpthread鏈接選項(xiàng)

3.rt庫(kù)

undefined reference to `clock_gettime’

增加-lrt鏈接選項(xiàng)

如果是使用codeblocks,可以再link option里加,不過(guò)因?yàn)橐蕾図樞虻膯?wèn)題,如果link option里加了還是報(bào)錯(cuò),直接在link file里添加pthread dl rt等即可.

如果是你自己的庫(kù)出現(xiàn)這undefined reference什么函數(shù),先去查下庫(kù)的源代碼,看看具體問(wèn)題.

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 荆州市| 新营市| 舞钢市| 临潭县| 河津市| 突泉县| 仙居县| 治多县| 昌江| 大新县| 巧家县| 沁源县| 安徽省| 米林县| 波密县| 临颍县| 万源市| 色达县| 富锦市| 克拉玛依市| 岑巩县| 大英县| 桐庐县| 汉沽区| 从化市| 建德市| 兴山县| 沙坪坝区| 普兰店市| 西藏| 碌曲县| 洛川县| 锡林郭勒盟| 铜梁县| 罗源县| 东乌珠穆沁旗| 长宁县| 炉霍县| 竹北市| 台中市| 安义县|