我正在尝试将MKL与IPOPT链接起来,以提高性能。我已经通读了下面的帖子,它帮助我解决了很多问题。
但是,当我使用以下命令配置Ipopt时。
$ ../configure --prefix=/usr/local/ --with-blas='-L${MKLROOT}/lib/intel64 -Wl,--no-as-needed -lmkl_rt -lpthread -lm -ldl' CFLAGS='-m64 -I${MKLROOT}/include' CXXFLAGS='-m64 -I${MKLROOT}/include'当我尝试构建ipopt库时,我得到了这个错误,这似乎会导致问题。
$ checking for COIN-OR package Mumps... not given: Variable 'MKLROOT' not defined in '/home/romela/Ipopt-3.12.10/build/ThirdParty/Mumps/coinmumps-uninstalled.pc但是,如果我只是按照https://www.coin-or.org/Ipopt/documentation/node13.html#SECTION00043100000000000000中的说明,使用./get通过ThirdParty安装未优化的库,那么我会得到以下结果
$ checking for COIN-OR package Mumps... yes: 1.6.0 我将mklvar.sh放在我的.bashrc文件中,当我运行以下命令时
$ echo $MKLROOT我得到了
$ /opt/intel/compilers_and_libraries_2018.2.199/linux/mkl这似乎表明我的MKL目录源码是正确的。如果任何人对我的问题有任何见解,将不胜感激。
发布于 2018-09-05 23:49:43
这似乎是一个关于MUltifrontal大规模并行稀疏直接求解器(MUMPS)的问题,但您已经用麻省总医院实用程序多编程系统(MUMPS)标记了它。这是一个很容易犯的错误。
如果你改变问题的标记方式,你的问题可能会得到更好的回答。
理想情况下,一些具有足够高声誉的友好的Stack Overflow用户将为MUMPS Solver创建一个新标签,并将其与MUMPS数据库区分开来。
发布于 2021-05-18 21:39:16
对configure调用中的参数使用双引号而不是单引号。使用单引号时,不会展开像${MKLROOT}这样的变量。
https://stackoverflow.com/questions/52157221
复制相似问题