BLAS、ATLAS、LAPACK 共享库最小示例
BLAS, ATLAS, LAPACK Shared library minimal example
我通过
安装了 atlas、blas 和 lapack x86_64 包
yum install atlas.x86_64 blas.x86_64 lapack.x86_64
在 Redhat 6.6 (ii) 发行版上,它安装了一个共享库,但在编译和链接时遇到问题。例如,如果我尝试编译最小工作示例:
program main
print *, 'hello world'
end program main
使用
gfortran -L. main.f90 -llapack -lblas -o main
编译器找不到库,我收到错误消息:
/usr/bin/ld: cannot find -llapack
collect2: ld returned 1 exit status
我对 Fortran 和 linux 比较陌生,所以我可能遗漏了一些明显的东西。从源代码编译库也失败了,我也浪费了时间。
不胜感激。
您需要安装这些软件包的 *-devel
版本。
例如,我有一个虚拟的 Fedora 17 系统:
$ cat main.f90
program main
print *, 'hello world'
end program main
$ gfortran -L. main.f90 -llapack -lblas -o main
/usr/bin/ld: cannot find -llapack
/usr/bin/ld: cannot find -lblas
collect2: error: ld returned 1 exit status
$ sudo yum install atlas.x86_64 blas.x86_64 lapack.x86_64
...
Installed:
blas.x86_64 0:3.4.2-2.fc17 lapack.x86_64 0:3.4.2-2.fc17
Complete!
$ gfortran -L. main.f90 -llapack -lblas -o main
/usr/bin/ld: cannot find -llapack
/usr/bin/ld: cannot find -lblas
collect2: error: ld returned 1 exit status
$ sudo yum install atlas-devel.x86_64 blas-devel.x86_64 lapack-devel.x86_64
...
Installed:
atlas-devel.x86_64 0:3.8.4-3.fc17 blas-devel.x86_64 0:3.4.2-2.fc17
lapack-devel.x86_64 0:3.4.2-2.fc17
Complete!
$ gfortran -L. main.f90 -llapack -lblas -o main
(Success)
我通过
安装了 atlas、blas 和 lapack x86_64 包yum install atlas.x86_64 blas.x86_64 lapack.x86_64
在 Redhat 6.6 (ii) 发行版上,它安装了一个共享库,但在编译和链接时遇到问题。例如,如果我尝试编译最小工作示例:
program main
print *, 'hello world'
end program main
使用
gfortran -L. main.f90 -llapack -lblas -o main
编译器找不到库,我收到错误消息:
/usr/bin/ld: cannot find -llapack
collect2: ld returned 1 exit status
我对 Fortran 和 linux 比较陌生,所以我可能遗漏了一些明显的东西。从源代码编译库也失败了,我也浪费了时间。
不胜感激。
您需要安装这些软件包的 *-devel
版本。
例如,我有一个虚拟的 Fedora 17 系统:
$ cat main.f90
program main
print *, 'hello world'
end program main
$ gfortran -L. main.f90 -llapack -lblas -o main
/usr/bin/ld: cannot find -llapack
/usr/bin/ld: cannot find -lblas
collect2: error: ld returned 1 exit status
$ sudo yum install atlas.x86_64 blas.x86_64 lapack.x86_64
...
Installed:
blas.x86_64 0:3.4.2-2.fc17 lapack.x86_64 0:3.4.2-2.fc17
Complete!
$ gfortran -L. main.f90 -llapack -lblas -o main
/usr/bin/ld: cannot find -llapack
/usr/bin/ld: cannot find -lblas
collect2: error: ld returned 1 exit status
$ sudo yum install atlas-devel.x86_64 blas-devel.x86_64 lapack-devel.x86_64
...
Installed:
atlas-devel.x86_64 0:3.8.4-3.fc17 blas-devel.x86_64 0:3.4.2-2.fc17
lapack-devel.x86_64 0:3.4.2-2.fc17
Complete!
$ gfortran -L. main.f90 -llapack -lblas -o main
(Success)