<?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 Problems with reference Math kernel Library in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problems-with-reference-Math-kernel-Library/m-p/750758#M7267</link>
    <description>Everybody, THANKS. I try automating the process of setting Enviroment Variables with Getting Start 2, page 19, but, all time I get errors. Also, my English is very bad, this is reason I can't understand this manual 100 percent. &lt;BR /&gt;But, with people with you, all we can programmer with the best software, Intel Fortran. Thanks.&lt;BR /&gt;&lt;BR /&gt;Note: With John's explication the program run. I don't know because with &lt;A rel="/en-us/services/profile/quick_profile.php?is_paid=&amp;amp;user_id=9662" class="basic" href="https://community.intel.com/../profile/9662/"&gt;mecej4&lt;/A&gt; explication don't run, but THANKS.&lt;BR /&gt;&lt;BR /&gt;Regards, &lt;BR /&gt;&lt;BR /&gt;Felipe Rodrguez Fonte&lt;BR /&gt;</description>
    <pubDate>Wed, 24 Nov 2010 11:21:56 GMT</pubDate>
    <dc:creator>felipin85</dc:creator>
    <dc:date>2010-11-24T11:21:56Z</dc:date>
    <item>
      <title>Problems with reference Math kernel Library</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problems-with-reference-Math-kernel-Library/m-p/750753#M7262</link>
      <description>Hi, I'm using Ubuntu 10.04, and Intel Fortran ComposerXe 2011.I try using mkl, but I get a reference failure.:&lt;BR /&gt;&lt;I&gt;&lt;BR /&gt;felipe@felipe-desktop:~/Escritorio/Carpeta sin ttulo$ ifort PRUEBARESOLVER.f90 -o PRUEBA&lt;BR /&gt;/tmp/ifortGlnEnU.o: In function `MAIN__':&lt;BR /&gt;PRUEBARESOLVER.f90:(.text+0x35d): undefined reference to `getrf_'&lt;/I&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;My code to probe is:&lt;BR /&gt;&lt;BR /&gt;&lt;I&gt;&lt;B&gt;PROGRAM PRUEBARESOLVER&lt;BR /&gt;IMPLICIT NONE&lt;BR /&gt;INTEGER :: i&lt;BR /&gt;REAL,DIMENSION (3,3) :: A&lt;BR /&gt;REAL,DIMENSION (3) :: B&lt;BR /&gt;REAL,DIMENSION (3) :: X&lt;BR /&gt;X=0.0&lt;BR /&gt;WRITE(*,*)'ESCRIBIMOS LA MATRIZ A POR FILAS'&lt;BR /&gt;DO i=1,3&lt;BR /&gt;READ(*,*) A(i,1),A(i,2),A(i,3)&lt;BR /&gt;END DO&lt;BR /&gt;WRITE(*,*)'ESCRIBIMOS LA MATRIZ LD POR FILAS'&lt;BR /&gt;DO i=1,3&lt;BR /&gt;READ(*,*) B(i)&lt;BR /&gt;END DO&lt;BR /&gt;!Resolvemos &lt;BR /&gt;CALL getrf(A)&lt;BR /&gt;write(*,*) A&lt;BR /&gt;END PROGRAM PRUEBARESOLVER&lt;/B&gt;&lt;/I&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;I&gt;My bash is:&lt;BR /&gt;# Variables de entorno para compilador, libreria y debugger de intel&lt;BR /&gt;source /opt/intel/composerxe-2011/bin/compilervars.sh ia32&lt;BR /&gt;&lt;BR /&gt;#PATH="/opt/intel/composerxe-2011/bin:$PATH"&lt;BR /&gt;#export PATH&lt;BR /&gt;#LD_LIBRARY_PATH="/opt/intel/composerxe-2011/lib/ia32:$LD_LIBRARY_PATH"&lt;BR /&gt;#export LD_LIBRARY_PATH&lt;BR /&gt;PATH="/opt/intel/composerxe-2011/bin:$PATH"&lt;BR /&gt;export PATH&lt;BR /&gt;LD_LIBRARY_PATH="/opt/intel/composerxe-2011/lib/ia32:$LD_LIBRARY_PATH"&lt;BR /&gt;export LD_LIBRARY_PATH&lt;BR /&gt;LD_LIBRARY_PATH="/opt/intel/composerxe-2011/mkl/lib/ia32:$LD_LIBRARY_PATH"&lt;BR /&gt;export LD_LIBRARY_PATH&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;PATH=$PATH:/home/felipe/Matlab/bin&lt;BR /&gt;export PATH&lt;/I&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;I think that, my problem is in the bash. How Can I solver it?&lt;BR /&gt;Thanks &lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Fri, 19 Nov 2010 12:34:21 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problems-with-reference-Math-kernel-Library/m-p/750753#M7262</guid>
      <dc:creator>felipin85</dc:creator>
      <dc:date>2010-11-19T12:34:21Z</dc:date>
    </item>
    <item>
      <title>Problems with reference Math kernel Library</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problems-with-reference-Math-kernel-Library/m-p/750754#M7263</link>
      <description>&lt;I&gt;How Can I solve it?&lt;BR /&gt;&lt;BR /&gt;&lt;/I&gt;Read the MKL documentation, look at the exampl&lt;I&gt;e &lt;/I&gt;programs, and issue a proper call&lt;I&gt; &lt;/I&gt;to &lt;I&gt;GETRF&lt;/I&gt;. Use the modules provided with MKL to enable the compiler to compare your usage with the interface to &lt;I&gt;GETRF&lt;/I&gt;. &lt;BR /&gt;&lt;BR /&gt;Given that &lt;I&gt;GETRF &lt;/I&gt;is an interface name that matches different procedures depending on the argument list, you should not expect a Fortran-77 style implicit interface to work at all.</description>
      <pubDate>Fri, 19 Nov 2010 12:46:47 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problems-with-reference-Math-kernel-Library/m-p/750754#M7263</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2010-11-19T12:46:47Z</dc:date>
    </item>
    <item>
      <title>Problems with reference Math kernel Library</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problems-with-reference-Math-kernel-Library/m-p/750755#M7264</link>
      <description>&lt;DIV id="tiny_quote"&gt;
                &lt;DIV style="margin-left: 2px; margin-right: 2px;"&gt;Quoting &lt;A rel="/en-us/services/profile/quick_profile.php?is_paid=&amp;amp;user_id=9662" class="basic" href="https://community.intel.com/en-us/profile/9662/"&gt;mecej4&lt;/A&gt;&lt;/DIV&gt;
                &lt;DIV style="background-color: #e5e5e5; padding: 5px; border: 1px inset; margin-left: 2px; margin-right: 2px;"&gt;&lt;I&gt;&lt;I&gt;How Can I solve it?&lt;BR /&gt;&lt;BR /&gt;&lt;/I&gt;Read the MKL documentation, look at the exampl&lt;I&gt;e &lt;/I&gt;programs, and issue a proper call&lt;I&gt; &lt;/I&gt;to &lt;I&gt;GETRF&lt;/I&gt;. Use the modules provided with MKL to enable the compiler to compare your usage with the interface to &lt;I&gt;GETRF&lt;/I&gt;. &lt;BR /&gt;&lt;BR /&gt;Given that &lt;I&gt;GETRF &lt;/I&gt;is an interface name that matches different procedures depending on the argument list, you should not expect a Fortran-77 style implicit interface to work at all.&lt;/I&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&lt;/P&gt;Hi mecej4! In first place, I'm new in Linux, this is a big problem; but I read the documentation, and I change a bashrc, and I still have the same problem. The function GETRF was using for test, but my idea is using sparse subrutines, but I have a problems with call. My programas was wrote in fortran 95,not in 77.&lt;BR /&gt;&lt;BR /&gt;Tha bash modified is:&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;# Variables de entorno para compilador, libreria y debugger de intel&lt;BR /&gt;source /opt/intel/composerxe-2011/bin/compilervars.sh ia32&lt;BR /&gt;source /opt/intel/mkl/bin/mklvars.sh ia32&lt;BR /&gt;&lt;BR /&gt;#PATH="/opt/intel/composerxe-2011/bin:$PATH"&lt;BR /&gt;#export PATH&lt;BR /&gt;#LD_LIBRARY_PATH="/opt/intel/composerxe-2011/lib/ia32:$LD_LIBRARY_PATH"&lt;BR /&gt;#export LD_LIBRARY_PATH&lt;BR /&gt;PATH="/opt/intel/composerxe-2011/bin:$PATH"&lt;BR /&gt;export PATH&lt;BR /&gt;LD_LIBRARY_PATH="/opt/intel/composerxe-2011/lib/ia32:$LD_LIBRARY_PATH"&lt;BR /&gt;export LD_LIBRARY_PATH&lt;BR /&gt;LD_LIBRARY_PATH="/opt/intel/composerxe-2011/mkl/lib/ia32:$LD_LIBRARY_PATH"&lt;BR /&gt;export LD_LIBRARY_PATH&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;PATH=$PATH:/home/felipe/Matlab/bin&lt;BR /&gt;export PATH</description>
      <pubDate>Fri, 19 Nov 2010 18:28:27 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problems-with-reference-Math-kernel-Library/m-p/750755#M7264</guid>
      <dc:creator>felipin85</dc:creator>
      <dc:date>2010-11-19T18:28:27Z</dc:date>
    </item>
    <item>
      <title>Problems with reference Math kernel Library</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problems-with-reference-Math-kernel-Library/m-p/750756#M7265</link>
      <description>Again, I suggest that you try one of the example problems included with the MKL distribution. Once you succeed in compiling, linking and running a few of these examples, you can proceed to writing your own MKL calls.&lt;BR /&gt;&lt;BR /&gt;You cannot, as a rule, call a library subroutine without giving it the proper type and number of arguments.&lt;BR /&gt;&lt;BR /&gt;I don't know why you are changing the ifortvars.sh script. Once it is working after installation, it is intended to be modified infrequently, if at all.&lt;BR /&gt;&lt;BR /&gt;Here are the steps to get started.&lt;BR /&gt;&lt;BR /&gt;1. Create a working direcory, and copy one of the MKL example source files into it, for example, ddotx.f. If the example needs data, copy the data file as well: ddotx.d.&lt;BR /&gt;&lt;BR /&gt;2. Set up the IFORT environment: (note the dot and space before the name of the shell script)&lt;BR /&gt;&lt;BR /&gt; . /opt/intel/compiler/11/067/bin/ifortvars.sh&lt;BR /&gt;&lt;BR /&gt;3. Compile and link the example:&lt;BR /&gt;&lt;BR /&gt; ifort -mkl ddotx.f&lt;BR /&gt;&lt;BR /&gt;4. Run the example&lt;BR /&gt;&lt;BR /&gt; ./a.out &amp;lt; ddotx.d&lt;BR /&gt;</description>
      <pubDate>Fri, 19 Nov 2010 21:45:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problems-with-reference-Math-kernel-Library/m-p/750756#M7265</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2010-11-19T21:45:32Z</dc:date>
    </item>
    <item>
      <title>Problems with reference Math kernel Library</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problems-with-reference-Math-kernel-Library/m-p/750757#M7266</link>
      <description>&lt;P&gt;The fact that the program was not written for Fortran 77 might not be relevant anymore (after all, code written in fixed-source is still Fortran 90+ code).&lt;/P&gt;&lt;P&gt;The error you're having is given by the linker, not the compiler. Your particular code needs three things in order to make it work:&lt;/P&gt;&lt;P&gt;Add the "USE LAPACK95" statement before the implicit none. That way the compiler will know where the GETRF subroutine comes from, and will not defer its resolution to the linker.&lt;/P&gt;&lt;P&gt;&lt;PRE&gt;[fortran]PROGRAM PRUEBARESOLVER
USE LAPACK95
IMPLICIT NONE
INTEGER :: i
REAL,DIMENSION (3,3) :: A
REAL,DIMENSION (3) :: B
REAL,DIMENSION (3) :: X
X=0.0
WRITE(*,*)'ESCRIBIMOS LA MATRIZ A POR FILAS'
DO i=1,3
READ(*,*) A(i,1),A(i,2),A(i,3)
END DO
WRITE(*,*)'ESCRIBIMOS LA MATRIZ LD  POR FILAS'
DO i=1,3
READ(*,*) B(i)
END DO
!Resolvemos 
CALL getrf(A)
write(*,*) A
END PROGRAM PRUEBARESOLVER
[/fortran]&lt;/PRE&gt; &lt;/P&gt;&lt;P&gt;Your .bashrc file only needs "source /opt/intel/composerxe-2011/bin/compilervars.sh ia32" (try using a &lt;STRONG&gt;.&lt;/STRONG&gt; instead of &lt;STRONG&gt;source&lt;/STRONG&gt;); the compilervars.sh script takes care of also invoking mklvars.sh if it exists, and it also takes care of exporting the PATH and LD_LIBRARY_PATH, so that you don't have to. The only convenient environment variables you might need are MKLPATH and MKLINCLUDE. The Intel-related portion of your .bashrc should look like:&lt;/P&gt;&lt;P&gt;&lt;PRE&gt;[bash]#IFC and MKL XE 2011
. /opt/intel/composerxe-2011/bin/compilervars.sh ia32
MKLPATH="$MKLROOT/lib/ia32"; export MKLPATH
MKLINCLUDE="$MKLROOT/include/ia32"; export MKLINCLUDE
[/bash]&lt;/PRE&gt; To compile your code, you need to instruct the compiler where to find the lapack95.mod (with the -I switch) and tell the linker where to find the libraries (with the -L switch), and which libraries to use (with either the -l switch or using the full path). Since, for reasons unknown, Intel doesn't provide a shared object of the Lapack library, your only option is to use the archive version, which requires listing the libraries in the exact dependency order and/or grouping them so that they can be used multiple times to solve dependencies. Your compile line should look something like:&lt;/P&gt;&lt;P&gt;&lt;PRE&gt;[bash]~$ ifort -o pruebaresolver -I$MKLINCLUDE -L$MKLPATH pruebaresolver.f90 -lmkl_lapack95  &lt;BR /&gt;    -Wl,--start-group $MKLPATH/libmkl_intel.a $MKLPATH/libmkl_intel_thread.a $MKLPATH/libmkl_core.a -Wl,--end-group &lt;BR /&gt;    -liomp5 -lpthread
[/bash]&lt;/PRE&gt; For future reference, you might want to check the MKL documentation (in your"/opt/intel/composerxe/Documentation/&lt;LOCALE&gt;/mkl" directory).&lt;/LOCALE&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Sun, 21 Nov 2010 06:32:35 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problems-with-reference-Math-kernel-Library/m-p/750757#M7266</guid>
      <dc:creator>John4</dc:creator>
      <dc:date>2010-11-21T06:32:35Z</dc:date>
    </item>
    <item>
      <title>Problems with reference Math kernel Library</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Problems-with-reference-Math-kernel-Library/m-p/750758#M7267</link>
      <description>Everybody, THANKS. I try automating the process of setting Enviroment Variables with Getting Start 2, page 19, but, all time I get errors. Also, my English is very bad, this is reason I can't understand this manual 100 percent. &lt;BR /&gt;But, with people with you, all we can programmer with the best software, Intel Fortran. Thanks.&lt;BR /&gt;&lt;BR /&gt;Note: With John's explication the program run. I don't know because with &lt;A rel="/en-us/services/profile/quick_profile.php?is_paid=&amp;amp;user_id=9662" class="basic" href="https://community.intel.com/../profile/9662/"&gt;mecej4&lt;/A&gt; explication don't run, but THANKS.&lt;BR /&gt;&lt;BR /&gt;Regards, &lt;BR /&gt;&lt;BR /&gt;Felipe Rodrguez Fonte&lt;BR /&gt;</description>
      <pubDate>Wed, 24 Nov 2010 11:21:56 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Problems-with-reference-Math-kernel-Library/m-p/750758#M7267</guid>
      <dc:creator>felipin85</dc:creator>
      <dc:date>2010-11-24T11:21:56Z</dc:date>
    </item>
  </channel>
</rss>

