undefined reference to 'dlopen';undefined reference to 'dlclose';undefined reference to 'dlerror'等問題


轉載:undefined reference to涉及的鏈接問題

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

/----------------------------------------------------->>>>>

在linux下,編譯鏈接的時候,經常會遇到這樣一個問題,undefined reference to.....,引起這個問題的原因在於在鏈接的時候缺少選項。下面舉幾個例子,並給出解決辦法。

1、  undefined reference to `dlerror'

 undefined reference to `dlopen'

 undefined reference to `dlerror';;解決方法:在makefile的 ldflags 后面把選項 -ldl添加上即可

2、undefined reference to `main';;解決方法:在makefile的 ldflags 后面添加 -nostartfiles 選項

3、undefined reference to `pthread_setspecific'

   undefined reference to `pthread_key_delete'

     undefined reference to `pthread_key_create'::解決辦法:在makefile的LDFLAGS后面添加 -lpthread 選項。

最后::如果undefined reference to后面的內容是在自己的文件中聲明或定義的東西,就不能用這種方法來解決了。這時就需要檢查一下自己的makefile涉及到源文件、頭文件的地方是否出錯了,也有可能是其他的原因


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM