cannot find -l****問題的解決的方法


在ubuntu下編譯C或cpp文件時,可能會出現找不到鏈接庫的問題,其形式為:

cannot find -l****

這里的**通常是指的鏈接庫。比方,剛剛裝好opencv,依照網上教程一步步編譯好了。最后依照教程想要編譯一下/example/c下的樣例試試,結果運行了

./build_all.sh

后,爆出一堆上面這樣的錯誤。比方,我在自己電腦上出現的錯誤就是找不到下面庫

cannot find -lcudart
cannot find -lnppc
cannot find -lnppi
cannot find -lnppc
cannot find -lnpps

這說明下面庫文件鏈接有問題,也就是find后面的參數中,l的后面就是庫文件的名字,只是須要手動在名字前補齊lib

libcudart
libnppc
libnppi
libnppc
libnpps

既然是lib文件鏈接有問題。簡單了。這樣的情況分兩種

1、在usr/lib文件夾下有這些庫文件

直接修復下面鏈接就可以。比如依次運行

ln -s lib***.so.6(某個數字) lib***.so

就可以

2、在usr/lib文件夾下沒有這些文件

直接在系統根文件夾中依次搜索這些庫文件,並使用

sudo cp 庫文件名稱 /usr/lib

命令將對應庫文件復制到該文件夾中就可以


免責聲明!

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



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