我安装在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