ubuntu18在make時出現/usr/bin/ld: cannot find -lbfd和cannot find liberty問題的解決方法

筆者在ubuntu18上使用整合NPB和mpiP的過程中,在程序編譯(make)的過程中出現了下面兩個錯誤:

/usr/bin/ld: cannot find -lbfd
/usr/bin/ld: cannot find -liberty

經過查找mpiP的相關文檔,-lbfd和-liberty庫是是GNU binutils的一部分,這些庫(-lbfd -liberty)爲解碼符號信息提供支持。

因此爲了正確的編譯程序,需要在系統中安裝-lbfd和-liberty的庫,也就是binutils庫。

首先是-lbfd庫的安裝,

sudo apt-get install binutils-dev

其次是-liberty庫的安裝。Iberty庫是libiberty-dev on Ubuntu 14.04及以上版本的一部分(它以前是在binutil-dev on 12.04中),所以需要單獨安裝libiberty-dev庫。

sudo apt-get install libiberty-dev

 兩個庫安裝好之後,就可以正常編譯和運行NPB程序了。

發佈了36 篇原創文章 · 獲贊 105 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章