隨筆-204  評(píng)論-90  文章-8  trackbacks-0

          引自:http://blog.csdn.net/lyuan13141234/article/details/5667570

          在linux下,編譯鏈接的時(shí)候,經(jīng)常會(huì)遇到這樣一個(gè)問(wèn)題,undefined reference to.....,引起這個(gè)問(wèn)題的原因在于在鏈接的時(shí)候缺少選項(xiàng)。下面舉幾個(gè)例子,并給出解決辦法。

          1、undefined reference to `dlerror'
               undefined reference to `dlopen'
               undefined reference to `dlerror'

              解決辦法:在makefile的LDFLAGS后面把選項(xiàng) -ldl 添加上即可。

          2、undefined reference to `main'

              解決辦法:在makefile的LDFLAGS后面添加 -nostartfiles 選項(xiàng)。

          3、undefined reference to `pthread_setspecific'
               undefined reference to `pthread_key_delete'
               undefined reference to `pthread_key_create'

              解決辦法:在makefile的LDFLAGS后面添加 -lpthread 選項(xiàng)。

          4、undefined reference to `clock_gettime'

              解決辦法:在makefile的LDFLAGS后面添加 -lrt 選項(xiàng)。

           

          不過(guò)要注意的是,如果undefined reference to后面的內(nèi)容是在自己的文件中聲明或定義的東西,就不能用這種方法來(lái)解決了。這時(shí)就需要檢查一下自己的makefile涉及到源文件、頭文件的地方是否出錯(cuò)了,也有可能是其他的原因。

          posted on 2012-07-04 17:29 一凡 閱讀(5317) 評(píng)論(1)  編輯  收藏 所屬分類: Linux C

          評(píng)論:
          # re: undefined reference to問(wèn)題 2013-04-03 16:42 | 碩士生
          我遇到的這個(gè)問(wèn)題是最外面的makefile中沒(méi)有包含出錯(cuò)函數(shù)所在的路徑  回復(fù)  更多評(píng)論
            

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 南京市| 交城县| 六枝特区| 沅江市| 洛宁县| 丽水市| 昭平县| 双鸭山市| 彰化市| 北流市| 长沙市| 德格县| 日土县| 葵青区| 蒙自县| 大城县| 青铜峡市| 江华| 富源县| 江川县| 津市市| 磐石市| 正宁县| 福安市| 敦化市| 行唐县| 金堂县| 陵川县| 遂宁市| 洛宁县| 奎屯市| 巢湖市| 翼城县| 金寨县| 洞口县| 班玛县| 汉阴县| 莫力| 集贤县| 襄汾县| 徐水县|