<?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 Re: Linking problem with MKL 10 under Visual C++ in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Linking-problem-with-MKL-10-under-Visual-C/m-p/878336#M9237</link>
    <description>Both my reading of the docs and your error messages point to the conclusion that mkl_c libraries aren't intended to work in the layered model. Do you get undefined references if you use just the other 2 libraries, or, intead, the mkl_lapack or fft and mkl_c?&lt;BR /&gt;&lt;BR /&gt;</description>
    <pubDate>Mon, 17 Dec 2007 13:59:13 GMT</pubDate>
    <dc:creator>TimP</dc:creator>
    <dc:date>2007-12-17T13:59:13Z</dc:date>
    <item>
      <title>Linking problem with MKL 10 under Visual C++</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Linking-problem-with-MKL-10-under-Visual-C/m-p/878333#M9234</link>
      <description>Hi!&lt;BR /&gt;&lt;BR /&gt;I am a developer of the IT++ software library (http://itpp.sf.net/). IT++ can be linked to MKL to use it's BLAS/LAPACK and FFT routines.&lt;BR /&gt;I recently tried out the latest MKL 10 library for Windows (ia32 version). And I encountered problems with linking a few of the test programs included in the IT++ library. Here is an example build error message:&lt;BR /&gt;&lt;BR /&gt;&lt;FONT face="Courier New" size="2"&gt;------ Build started: Project: vec_test, Configuration: Release Win32 ------&lt;BR /&gt;Linking...&lt;BR /&gt;mkl_core_dll.lib(_dgees_dyn.obj) : error LNK2005: _select_cdc_dgees1 already defined in mkl_intel_c_dll.lib(_dgees_dll.obj)&lt;BR /&gt;mkl_core_dll.lib(_zgees_dyn.obj) : error LNK2005: _select_cdc_zgees1 already defined in mkl_intel_c_dll.lib(_zgees_dll.obj)&lt;BR /&gt;D:msyshomeediapitpp-4.0.1_pre20071213win32itpp_mkl_tests\..&amp;#8;invec_test.exe : fatal error LNK1169: one or more multiply defined symbols found&lt;BR /&gt;Build log was saved at "file://d:msyshomeediapitpp-4.0.1_pre20071213win32itpp_mkl_testsvec_test_buildReleaseBuildLog.htm"&lt;BR /&gt;vec_test - 3 error(s), 0 warning(s)&lt;BR /&gt;&lt;BR /&gt;&lt;FONT face="Times New Roman" size="3"&gt;For linking, I am using a wrapper DLL library "mkl_c_dll.lib" and multi-threaded DLL linking. The same test programs compile and link fine using older MKL releases - I tried 9.1 and 8.1.&lt;BR /&gt;A workaround for this problem is to use static linking for these tests, i.e. link to "mkl_c.lib libguide40.lib", but this is not a good solution for me.&lt;BR /&gt;So I suspect that there is a bug in the latest MKL release.&lt;BR /&gt;&lt;BR /&gt;Anyone can confirm similar problems?&lt;BR /&gt;BR,&lt;BR /&gt;/Adam&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;</description>
      <pubDate>Fri, 14 Dec 2007 07:57:53 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Linking-problem-with-MKL-10-under-Visual-C/m-p/878333#M9234</guid>
      <dc:creator>ediap</dc:creator>
      <dc:date>2007-12-14T07:57:53Z</dc:date>
    </item>
    <item>
      <title>Re: Linking problem with MKL 10 under Visual C++</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Linking-problem-with-MKL-10-under-Visual-C/m-p/878334#M9235</link>
      <description>If you read the forum, you would see that MKL 10 is different from its predecessors, Also you would see&lt;BR /&gt;that you must consult the documentation, even if it (the documentation) may be considered buggy.&lt;BR /&gt;Generally, you use either one of the packages which aren't real libraries but invoke typical combinations (e.g. mkl_c..), or you use &lt;BR /&gt;the actual "layered" libraries, such as the thread and the core libraries. &lt;BR /&gt;</description>
      <pubDate>Fri, 14 Dec 2007 14:15:05 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Linking-problem-with-MKL-10-under-Visual-C/m-p/878334#M9235</guid>
      <dc:creator>TimP</dc:creator>
      <dc:date>2007-12-14T14:15:05Z</dc:date>
    </item>
    <item>
      <title>Re: Linking problem with MKL 10 under Visual C++</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Linking-problem-with-MKL-10-under-Visual-C/m-p/878335#M9236</link>
      <description>Hi Tim,&lt;BR /&gt;&lt;BR /&gt;Thanks for your interest!&lt;BR /&gt;I have already read the documentation carefully and also searched the forum threads. And I definitely know the new linking layered model of MKL 10.&lt;BR /&gt;&lt;BR /&gt;Anyway, the problem occurs only on Windows with MSVC++ .NET using dynamic linking. &lt;FONT face="Courier New"&gt;&lt;FONT face="Verdana" size="3"&gt;I have no
problems linking these particular test programs to static libraries
(both dummy and pure layered ones) and also no problems with linking to MKL
10 under Linux (where both static and shared linking works fine).&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR /&gt;&lt;BR /&gt;I tried the dummy DLL library first (i.e. mkl_c_dll.lib) because it would provide me the compatibility with MKL 8 and 9, but I also tried the libraries from pure layered model, i.e.:&lt;BR /&gt;"mkl_intel_c_dll.lib mkl_sequential_dll.lib mkl_core_dll.lib"&lt;BR /&gt;In both cases the linker says that "_select_cdc_dgeesl" is already defined:&lt;BR /&gt;&lt;FONT face="Courier New"&gt;mkl_core_dll.lib(_dgees_dyn.obj) : error LNK2005: _select_cdc_dgeesl already defined in mkl_intel_c_dll.lib(_dgees_dll.lib)&lt;BR /&gt;&lt;BR /&gt;&lt;FONT face="Verdana" size="3"&gt;So, it seems that the interface layer (mkl_intel_c_dll.lib) is incompatible with the computational_layer (mkl_core_dll.lib) here.&lt;BR /&gt;Therefore, I still suspect the problem is in MKL itself, not the linking options I use.&lt;BR /&gt;&lt;BR /&gt;If you think I am doing something wrong, I would be glad to hear about this. Thanks in advance!&lt;BR /&gt;&lt;BR /&gt;BR,&lt;BR /&gt;/Adam&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;</description>
      <pubDate>Mon, 17 Dec 2007 08:26:59 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Linking-problem-with-MKL-10-under-Visual-C/m-p/878335#M9236</guid>
      <dc:creator>ediap</dc:creator>
      <dc:date>2007-12-17T08:26:59Z</dc:date>
    </item>
    <item>
      <title>Re: Linking problem with MKL 10 under Visual C++</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Linking-problem-with-MKL-10-under-Visual-C/m-p/878336#M9237</link>
      <description>Both my reading of the docs and your error messages point to the conclusion that mkl_c libraries aren't intended to work in the layered model. Do you get undefined references if you use just the other 2 libraries, or, intead, the mkl_lapack or fft and mkl_c?&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Mon, 17 Dec 2007 13:59:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Linking-problem-with-MKL-10-under-Visual-C/m-p/878336#M9237</guid>
      <dc:creator>TimP</dc:creator>
      <dc:date>2007-12-17T13:59:13Z</dc:date>
    </item>
    <item>
      <title>Re: Linking problem with MKL 10 under Visual C++</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Linking-problem-with-MKL-10-under-Visual-C/m-p/878337#M9238</link>
      <description>&lt;FONT face="Verdana"&gt;But I do not try to use the "mkl_c.lib" (the dummy static one), but "mkl_c_dll.lib" (the dummy DLL library), because I am interested in dynamic linking. As I previously said, the static linking works fine.&lt;BR /&gt;&lt;BR /&gt;So, to be precise, these combinations of static libraries work fine with MKL 10:&lt;BR /&gt;1) "mkl_c.lib"&lt;BR /&gt;2) "mkl_intel_c.lib mkl_sequential.lib mkl_core.lib"&lt;BR /&gt;3) "mkl_intel_c.lib mkl_intel_thread.lib mkl_core.lib libguide.lib"&lt;BR /&gt;&lt;BR /&gt;According to the documentation 1) is adequate to 3), since mkl_c.lib is a dummy wrapper of 3).&lt;BR /&gt;&lt;BR /&gt;But these combinations of dynamic libraries result in the linking errors quoted in my previous email:&lt;BR /&gt;1) &lt;/FONT&gt;&lt;FONT face="Verdana"&gt;"mkl_c_dll.lib"&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="Verdana"&gt;2) &lt;/FONT&gt;&lt;FONT face="Verdana"&gt;"mkl_intel_c_dll.lib mkl_sequential_dll.lib mkl_core_dll.lib"&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="Verdana"&gt;3) &lt;/FONT&gt;&lt;FONT face="Verdana"&gt;"mkl_intel_c_dll.lib mkl_intel_thread_dll.lib mkl_core_dll.lib libguide40.lib"&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="Verdana"&gt;&lt;BR /&gt;&lt;BR /&gt;When I try with only two latter libraries, e.g.: "mkl_sequential_dll.lib mkl_core_dll.lib" I got a lot of unresolved symbols of BLAS functions, because I did not specified the interface library:&lt;BR /&gt;&lt;BR /&gt;&lt;FONT face="Courier New"&gt;Linking...&lt;BR /&gt;itpp.lib(mat.obj) : error LNK2001: unresolved external symbol _zcopy_&lt;BR /&gt;itpp.lib(schur.obj) : error LNK2001: unresolved external symbol _zcopy_&lt;BR /&gt;[...]&lt;BR /&gt;&lt;BR /&gt;&lt;FONT face="Verdana"&gt;As I said at the beginning, I have no problems linking these three test programs to a static "mkl_c.lib", no matter if I use "mkl_lapack.lib" or "mkl_cdft.lib" or not, since this is static linking.&lt;BR /&gt;&lt;BR /&gt;I would be glad if you could download the latest stable IT++ library sources from &lt;A href="http://itpp.sourceforge.net/" target="_blank"&gt;http://itpp.sourceforge.net/&lt;/A&gt; and build the IT++ library linked to MKL (just use win32/itpp_mkl.vcproj in MSVC++ and set target to Release). Then you can try to link the test programs to the IT++ library. Just use win32/itpp_mkl_tests/array_test.vcpoj) and build the whole solution. You will see that 3 out of 52 tests will result in the linking errors I reported in my initial email of this thread.&lt;BR /&gt;&lt;BR /&gt;BR,&lt;BR /&gt;/Adam&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR /&gt;&lt;/FONT&gt;</description>
      <pubDate>Tue, 18 Dec 2007 12:18:37 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Linking-problem-with-MKL-10-under-Visual-C/m-p/878337#M9238</guid>
      <dc:creator>ediap</dc:creator>
      <dc:date>2007-12-18T12:18:37Z</dc:date>
    </item>
  </channel>
</rss>

