我安裝在Ubuntu LAPACK通過以下the instruction,gfortran LAPACK 「未定義參考」 錯誤
sudo apt-get install liblapack-dev
因而我能找到/usr/lib/libblas/libblas.a
和/usr/lib/lapack/liblapack.a
,然後與randomsys1
example測試它在gfortran
,
gfortran -llapack -lblas randomsys1.f90
gfortran -llapack -L/usr/lib/lapack -lblas -L/usr/lib/libblas randomsys1.f90
但我收到以下錯誤(dgesv
是一個LAPACK例程):
/tmp/ccnzuuiY.o: In function `MAIN__':
randomsys1.f90:(.text+0xb): undefined reference to `init_random_seed_'
randomsys1.f90:(.text+0x3c2): undefined reference to `dgesv_'
collect2: ld returned 1 exit status
安裝LAPACK有什麼問題嗎?非常感謝!
嘗試將鏈接命令(即-llapack -lblas)*放在要編譯的文件的名稱後面。否則,鏈接器可能會嘗試按錯誤順序解析符號。 – janneb
非常感謝@janneb!它確實有用! – Randel