我使用以下链接使用 openblas 编译 Ipopt:./configure --with-blas-incdir="-L/home/moritz/build/CoinIpopt_test/ThirdParty/openblas/include/" --with-blas-lib="-L/home/moritz/build/CoinIpopt_test/ThirdParty/openblas/lib/ -libopenblas_sandybridgep-r0.2.14.a"
如果我没有定义任何特定的 LAPACK 库,Ipopt 会自动使用来自 netlib 的 LAPACK。openplas 是否带有自己优化的 LAPACK 实现?
如果我使用--with-lapack-incdir="-L/home/moritz/build/CoinIpopt_test/ThirdParty/openblas/include/" --with-lapack-lib="-L/home/moritz/build/CoinIpopt_test/ThirdParty/openblas/lib/"
make 失败是因为某些 Lapack 例程无法解析,例如undefined reference to
dpotrs_
At least there is the file
lapacke.hin the
包含lib`folder but there are not LAPACK libraries in the
文件夹。
我在 GitHub 上发现了这个问题,说明:
好的,我想我想通了...您可以通过在 make 命令行上指定 NO_LAPACK=1 来构建 OpenBLAS 而不在其中包含 LAPACK。默认情况下,它包含一个完整的 LAPACK 库(优化了某些部分)。
但如果是这种情况,库在哪里?
我应该针对 openblas 编译 LAPACK 吗?
如果有人能对这个问题有所了解,我将不胜感激。