<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Compiling PLUMED with mkl libraries of lapack and blas failed in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Compiling-PLUMED-with-mkl-libraries-of-lapack-and-blas-failed/m-p/945322#M14818</link>
    <description>&lt;P&gt;Hi,&lt;BR /&gt;
	I am trying to compile a big program called PLUMED&amp;nbsp;which&amp;nbsp;needs libraries of&amp;nbsp;lapack and blas. I am using icc&amp;nbsp;compilers&amp;nbsp; in a &amp;nbsp;Red Hat Enterprise Linux Server release 5.7, and I assigned the libraires of lapack and blas to the mkl libraires of libmkl_lapack95_ilp64.a and libmkl_blas95_ilp64.a. During the compilation I have the following problem:&lt;BR /&gt;
	"&lt;/P&gt;

&lt;P&gt;......&lt;/P&gt;

&lt;P&gt;icpc -rdynamic ../main/main.o ../wrapper/Plumed.o -o plumed-runtime -ldl&lt;BR /&gt;
	Building Plumed.inc, runtime-linking version&lt;BR /&gt;
	Building Plumed.inc, shared version&lt;BR /&gt;
	Building Plumed.cmake, runtime-linking version&lt;BR /&gt;
	Building Plumed.cmake, shared version&lt;BR /&gt;
	Building Plumed.cmake, static version&lt;BR /&gt;
	../bias/MetaD.o: In function `int PLMD::Invert&amp;lt;double&amp;gt;(PLMD::Matrix&amp;lt;double&amp;gt; const&amp;amp;, PLMD::Matrix&amp;lt;double&amp;gt;&amp;amp;)':&lt;BR /&gt;
	MetaD.cpp:(.gnu.linkonce.t._ZN4PLMD6InvertIdEEiRKNS_6MatrixIT_EERNS1_IdEE[.gnu.linkonce.t._ZN4PLMD6InvertIdEEiRKNS_6MatrixIT_EERNS1_IdEE]+0x11a): undefined reference to `dgetrf_'&lt;BR /&gt;
	MetaD.cpp:(.gnu.linkonce.t._ZN4PLMD6InvertIdEEiRKNS_6MatrixIT_EERNS1_IdEE[.gnu.linkonce.t._ZN4PLMD6InvertIdEEiRKNS_6MatrixIT_EERNS1_IdEE]+0x187): undefined reference to `dgetri_'&lt;BR /&gt;
	MetaD.cpp:(.gnu.linkonce.t._ZN4PLMD6InvertIdEEiRKNS_6MatrixIT_EERNS1_IdEE[.gnu.linkonce.t._ZN4PLMD6InvertIdEEiRKNS_6MatrixIT_EERNS1_IdEE]+0x1de): undefined reference to `dgetri_'&lt;BR /&gt;
	../bias/MetaD.o: In function `int PLMD::diagMat&amp;lt;double&amp;gt;(PLMD::Matrix&amp;lt;double&amp;gt; const&amp;amp;, std::vector&amp;lt;double, std::allocator&amp;lt;double&amp;gt; &amp;gt;&amp;amp;, PLMD::Matrix&amp;lt;double&amp;gt;&amp;amp;)':&lt;BR /&gt;
	MetaD.cpp:(.gnu.linkonce.t._ZN4PLMD7diagMatIdEEiRKNS_6MatrixIT_EERSt6vectorIdSaIdEERNS1_IdEE[.gnu.linkonce.t._ZN4PLMD7diagMatIdEEiRKNS_6MatrixIT_EERSt6vectorIdSaIdEERNS1_IdEE]+0x24e): undefined reference to `dsyevr_'&lt;BR /&gt;
	MetaD.cpp:(.gnu.linkonce.t._ZN4PLMD7diagMatIdEEiRKNS_6MatrixIT_EERSt6vectorIdSaIdEERNS1_IdEE[.gnu.linkonce.t._ZN4PLMD7diagMatIdEEiRKNS_6MatrixIT_EERSt6vectorIdSaIdEERNS1_IdEE]+0x385): undefined reference to `dsyevr_'&lt;BR /&gt;
	../tools/KernelFunctions.o: In function `PLMD::KernelFunctions::KernelFunctions(std::vector&amp;lt;double, std::allocator&amp;lt;double&amp;gt; &amp;gt; const&amp;amp;, std::vector&amp;lt;double, std::allocator&amp;lt;double&amp;gt; &amp;gt; const&amp;amp;, std::string const&amp;amp;, bool, double const&amp;amp;, bool)':&lt;BR /&gt;
	KernelFunctions.cpp:(.text+0xd13): undefined reference to `dsyevr_'&lt;BR /&gt;
	KernelFunctions.cpp:(.text+0xe41): undefined reference to `dsyevr_'&lt;BR /&gt;
	make[4]: *** [plumed] Error 1&lt;BR /&gt;
	make[4]: *** Waiting for unfinished jobs....&lt;BR /&gt;
	make[4]: Leaving directory `/home/bshen/plumed-2.0.1/src/lib'&lt;BR /&gt;
	make[3]: *** [all] Error 2&lt;BR /&gt;
	make[3]: Leaving directory `/home/bshen/plumed-2.0.1/src/lib'&lt;BR /&gt;
	make[2]: *** [lib] Error 2&lt;BR /&gt;
	make[2]: Leaving directory `/home/bshen/plumed-2.0.1/src'&lt;BR /&gt;
	make[1]: *** [lib] Error 2&lt;BR /&gt;
	make[1]: Leaving directory `/home/bshen/plumed-2.0.1'&lt;BR /&gt;
	make: *** [all] Error 2&lt;/P&gt;

&lt;P&gt;"&lt;/P&gt;

&lt;P&gt;It is looks like there is something wrong with the blas and lapack libraries. Or I'm using the wrong compiler ? I'm new to&amp;nbsp;compilation problems&amp;nbsp;and I have no idea how to fix it. Can you help me?&lt;BR /&gt;
	Thanks in advance,&lt;/P&gt;

&lt;P&gt;Bo Shen&lt;/P&gt;</description>
    <pubDate>Wed, 25 Dec 2013 04:16:06 GMT</pubDate>
    <dc:creator>Bo_S_</dc:creator>
    <dc:date>2013-12-25T04:16:06Z</dc:date>
    <item>
      <title>Compiling PLUMED with mkl libraries of lapack and blas failed</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Compiling-PLUMED-with-mkl-libraries-of-lapack-and-blas-failed/m-p/945322#M14818</link>
      <description>&lt;P&gt;Hi,&lt;BR /&gt;
	I am trying to compile a big program called PLUMED&amp;nbsp;which&amp;nbsp;needs libraries of&amp;nbsp;lapack and blas. I am using icc&amp;nbsp;compilers&amp;nbsp; in a &amp;nbsp;Red Hat Enterprise Linux Server release 5.7, and I assigned the libraires of lapack and blas to the mkl libraires of libmkl_lapack95_ilp64.a and libmkl_blas95_ilp64.a. During the compilation I have the following problem:&lt;BR /&gt;
	"&lt;/P&gt;

&lt;P&gt;......&lt;/P&gt;

&lt;P&gt;icpc -rdynamic ../main/main.o ../wrapper/Plumed.o -o plumed-runtime -ldl&lt;BR /&gt;
	Building Plumed.inc, runtime-linking version&lt;BR /&gt;
	Building Plumed.inc, shared version&lt;BR /&gt;
	Building Plumed.cmake, runtime-linking version&lt;BR /&gt;
	Building Plumed.cmake, shared version&lt;BR /&gt;
	Building Plumed.cmake, static version&lt;BR /&gt;
	../bias/MetaD.o: In function `int PLMD::Invert&amp;lt;double&amp;gt;(PLMD::Matrix&amp;lt;double&amp;gt; const&amp;amp;, PLMD::Matrix&amp;lt;double&amp;gt;&amp;amp;)':&lt;BR /&gt;
	MetaD.cpp:(.gnu.linkonce.t._ZN4PLMD6InvertIdEEiRKNS_6MatrixIT_EERNS1_IdEE[.gnu.linkonce.t._ZN4PLMD6InvertIdEEiRKNS_6MatrixIT_EERNS1_IdEE]+0x11a): undefined reference to `dgetrf_'&lt;BR /&gt;
	MetaD.cpp:(.gnu.linkonce.t._ZN4PLMD6InvertIdEEiRKNS_6MatrixIT_EERNS1_IdEE[.gnu.linkonce.t._ZN4PLMD6InvertIdEEiRKNS_6MatrixIT_EERNS1_IdEE]+0x187): undefined reference to `dgetri_'&lt;BR /&gt;
	MetaD.cpp:(.gnu.linkonce.t._ZN4PLMD6InvertIdEEiRKNS_6MatrixIT_EERNS1_IdEE[.gnu.linkonce.t._ZN4PLMD6InvertIdEEiRKNS_6MatrixIT_EERNS1_IdEE]+0x1de): undefined reference to `dgetri_'&lt;BR /&gt;
	../bias/MetaD.o: In function `int PLMD::diagMat&amp;lt;double&amp;gt;(PLMD::Matrix&amp;lt;double&amp;gt; const&amp;amp;, std::vector&amp;lt;double, std::allocator&amp;lt;double&amp;gt; &amp;gt;&amp;amp;, PLMD::Matrix&amp;lt;double&amp;gt;&amp;amp;)':&lt;BR /&gt;
	MetaD.cpp:(.gnu.linkonce.t._ZN4PLMD7diagMatIdEEiRKNS_6MatrixIT_EERSt6vectorIdSaIdEERNS1_IdEE[.gnu.linkonce.t._ZN4PLMD7diagMatIdEEiRKNS_6MatrixIT_EERSt6vectorIdSaIdEERNS1_IdEE]+0x24e): undefined reference to `dsyevr_'&lt;BR /&gt;
	MetaD.cpp:(.gnu.linkonce.t._ZN4PLMD7diagMatIdEEiRKNS_6MatrixIT_EERSt6vectorIdSaIdEERNS1_IdEE[.gnu.linkonce.t._ZN4PLMD7diagMatIdEEiRKNS_6MatrixIT_EERSt6vectorIdSaIdEERNS1_IdEE]+0x385): undefined reference to `dsyevr_'&lt;BR /&gt;
	../tools/KernelFunctions.o: In function `PLMD::KernelFunctions::KernelFunctions(std::vector&amp;lt;double, std::allocator&amp;lt;double&amp;gt; &amp;gt; const&amp;amp;, std::vector&amp;lt;double, std::allocator&amp;lt;double&amp;gt; &amp;gt; const&amp;amp;, std::string const&amp;amp;, bool, double const&amp;amp;, bool)':&lt;BR /&gt;
	KernelFunctions.cpp:(.text+0xd13): undefined reference to `dsyevr_'&lt;BR /&gt;
	KernelFunctions.cpp:(.text+0xe41): undefined reference to `dsyevr_'&lt;BR /&gt;
	make[4]: *** [plumed] Error 1&lt;BR /&gt;
	make[4]: *** Waiting for unfinished jobs....&lt;BR /&gt;
	make[4]: Leaving directory `/home/bshen/plumed-2.0.1/src/lib'&lt;BR /&gt;
	make[3]: *** [all] Error 2&lt;BR /&gt;
	make[3]: Leaving directory `/home/bshen/plumed-2.0.1/src/lib'&lt;BR /&gt;
	make[2]: *** [lib] Error 2&lt;BR /&gt;
	make[2]: Leaving directory `/home/bshen/plumed-2.0.1/src'&lt;BR /&gt;
	make[1]: *** [lib] Error 2&lt;BR /&gt;
	make[1]: Leaving directory `/home/bshen/plumed-2.0.1'&lt;BR /&gt;
	make: *** [all] Error 2&lt;/P&gt;

&lt;P&gt;"&lt;/P&gt;

&lt;P&gt;It is looks like there is something wrong with the blas and lapack libraries. Or I'm using the wrong compiler ? I'm new to&amp;nbsp;compilation problems&amp;nbsp;and I have no idea how to fix it. Can you help me?&lt;BR /&gt;
	Thanks in advance,&lt;/P&gt;

&lt;P&gt;Bo Shen&lt;/P&gt;</description>
      <pubDate>Wed, 25 Dec 2013 04:16:06 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Compiling-PLUMED-with-mkl-libraries-of-lapack-and-blas-failed/m-p/945322#M14818</guid>
      <dc:creator>Bo_S_</dc:creator>
      <dc:date>2013-12-25T04:16:06Z</dc:date>
    </item>
    <item>
      <title>Please try to find the</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Compiling-PLUMED-with-mkl-libraries-of-lapack-and-blas-failed/m-p/945323#M14819</link>
      <description>&lt;P&gt;Please try to find the correct list of mkl's libs you need to link with your application by following with this article: &amp;nbsp;http://software.intel.com/sites/products/mkl/&lt;/P&gt;</description>
      <pubDate>Wed, 25 Dec 2013 05:42:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Compiling-PLUMED-with-mkl-libraries-of-lapack-and-blas-failed/m-p/945323#M14819</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2013-12-25T05:42:51Z</dc:date>
    </item>
    <item>
      <title>The Blas95 and Lapack95</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Compiling-PLUMED-with-mkl-libraries-of-lapack-and-blas-failed/m-p/945324#M14820</link>
      <description>&lt;P&gt;The Blas95 and Lapack95 libraries provide wrappers for Blas&amp;nbsp;and Lapack &amp;nbsp;routines with more convenient&amp;nbsp;Fortran-95 interfaces. The actual computational routines are provided in other libraries. In particular, the routine "&lt;SPAN style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;dsyevr" is in the F77 callable Lapack libraries. Unless the installation guide for your software package (PLUMED) specifies them, there is no need to include the xxx95yyy libraries at all.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;Try the simple solution of using the compiler flag -mkl. If that does not work, use the MKL Link Line Advisor as Gennady F. recommended.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 25 Dec 2013 11:07:41 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Compiling-PLUMED-with-mkl-libraries-of-lapack-and-blas-failed/m-p/945324#M14820</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2013-12-25T11:07:41Z</dc:date>
    </item>
    <item>
      <title>Thanks for mecej4, your way</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Compiling-PLUMED-with-mkl-libraries-of-lapack-and-blas-failed/m-p/945325#M14821</link>
      <description>&lt;P&gt;Thanks for mecej4, your way of using the compiler flag -mkl works, this is the most simple solution for me!&lt;/P&gt;</description>
      <pubDate>Thu, 26 Dec 2013 02:25:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Compiling-PLUMED-with-mkl-libraries-of-lapack-and-blas-failed/m-p/945325#M14821</guid>
      <dc:creator>Bo_S_</dc:creator>
      <dc:date>2013-12-26T02:25:03Z</dc:date>
    </item>
  </channel>
</rss>

