1. This forum section is a read-only archive which contains old newsgroup posts. If you wish to post a query, please do so in one of our main forum sections (here). This way you will get a faster, better response from the members on Motherboard Point.

Problem linking Intel Math Kernel Library

Discussion in 'Intel' started by renormalize@hotmail.com, Oct 2, 2006.

  1. Guest

    I'm not a particularly savy linux user, but I have managed to install
    Intel Fortran, C++, and MKL on my PC's linux partition (Ubuntu 6.0.6).
    Now I want to use the free Fortran package PROPACK to do singular value
    decompositions of large sparse matrices. Using the make file included
    with PROPACK works fine until it tries to link and optimize the example
    programs included with the package:

    make[2]: Entering directory `/home/ron/Desktop/PROPACK/double/Examples'
    ifort -cm -w95 -assume buffered_io -vec_report0 -O3 -ipo -xN -Vaxlib
    -o example.LINUX_ICC_IA32.x example.o matvec.o
    -L/opt/intel/mkl/8.1.1/lib/32 -L.. -L. ../libdpropack_LINUX_ICC_IA32.a
    .../libdlapack_util_LINUX_ICC_IA32.a -lmkl_p4 -lguide
    .../libdlapack_util_LINUX_ICC_IA32.a
    IPO: performing multi-file optimizations
    IPO: generating object file /tmp/ipo_ifort4usUFH.o
    /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    `vsCos'
    /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    `vslDeleteStream'
    /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    `vdSin'
    /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    `viRngUniformBits'
    /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    `vslNewStream'
    /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    `vdCos'
    /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    `vsSin'
    make[2]: *** [example.LINUX_ICC_IA32.x] Error 1
    make[2]: Leaving directory `/home/ron/Desktop/PROPACK/double/Examples'

    I figured out that the above undefined references are functions from
    the Intel VML/VSL package, so I added -lmkl_vml_p4 after -lmkl_p4 in
    the above ifort line, but it still generates the same errors.

    Any insights or suggestions?

    Thanks,
    Ron
     
    , Oct 2, 2006
    #1
    1. Advertising

  2. Steve Lionel Guest

    wrote:
    > I'm not a particularly savy linux user, but I have managed to install
    > Intel Fortran, C++, and MKL on my PC's linux partition (Ubuntu 6.0.6).
    > Now I want to use the free Fortran package PROPACK to do singular value
    > decompositions of large sparse matrices.


    Have you tried asking in the Intel MKL user forum at
    http://softwareforums.intel.com/ ?

    Steve
     
    Steve Lionel, Oct 2, 2006
    #2
    1. Advertising

  3. Tim Prince Guest

    wrote:
    > I'm not a particularly savy linux user, but I have managed to install
    > Intel Fortran, C++, and MKL on my PC's linux partition (Ubuntu 6.0.6).
    > Now I want to use the free Fortran package PROPACK to do singular value
    > decompositions of large sparse matrices. Using the make file included
    > with PROPACK works fine until it tries to link and optimize the example
    > programs included with the package:
    >
    > make[2]: Entering directory `/home/ron/Desktop/PROPACK/double/Examples'
    > ifort -cm -w95 -assume buffered_io -vec_report0 -O3 -ipo -xN -Vaxlib
    > -o example.LINUX_ICC_IA32.x example.o matvec.o
    > -L/opt/intel/mkl/8.1.1/lib/32 -L.. -L. ../libdpropack_LINUX_ICC_IA32.a
    > ../libdlapack_util_LINUX_ICC_IA32.a -lmkl_p4 -lguide
    > ../libdlapack_util_LINUX_ICC_IA32.a
    > IPO: performing multi-file optimizations
    > IPO: generating object file /tmp/ipo_ifort4usUFH.o
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `vsCos'
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `vslDeleteStream'
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `vdSin'
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `viRngUniformBits'
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `vslNewStream'
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `vdCos'
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `vsSin'
    > make[2]: *** [example.LINUX_ICC_IA32.x] Error 1
    > make[2]: Leaving directory `/home/ron/Desktop/PROPACK/double/Examples'
    >
    > I figured out that the above undefined references are functions from
    > the Intel VML/VSL package, so I added -lmkl_vml_p4 after -lmkl_p4 in
    > the above ifort line, but it still generates the same errors.
    >

    Maybe you could start by setting your sights a bit lower. If MKL is an
    important part of your application, -ipo may be unnecessary. Since
    you're using ifort, which duplicates some libraries furnished with MKL,
    it's probably better to omit the -L reference for MKL and try to link
    the ifort versions of those libraries. Simply give the entire path for
    lib_mkl and leave the rest to ifort and its PATH designations. I prefer
    to pass -openmp to ifort so that it will take care of libguide and
    pthreads. I hesitated to answer, not knowing if something about your
    application requires mkl_vml.
     
    Tim Prince, Oct 3, 2006
    #3
  4. Guest

    wrote:
    > I'm not a particularly savy linux user, but I have managed to install
    > Intel Fortran, C++, and MKL on my PC's linux partition (Ubuntu 6.0.6).
    > Now I want to use the free Fortran package PROPACK to do singular value
    > decompositions of large sparse matrices. Using the make file included
    > with PROPACK works fine until it tries to link and optimize the example
    > programs included with the package:
    >
    > make[2]: Entering directory `/home/ron/Desktop/PROPACK/double/Examples'
    > ifort -cm -w95 -assume buffered_io -vec_report0 -O3 -ipo -xN -Vaxlib
    > -o example.LINUX_ICC_IA32.x example.o matvec.o
    > -L/opt/intel/mkl/8.1.1/lib/32 -L.. -L. ../libdpropack_LINUX_ICC_IA32.a
    > ../libdlapack_util_LINUX_ICC_IA32.a -lmkl_p4 -lguide
    > ../libdlapack_util_LINUX_ICC_IA32.a
    > IPO: performing multi-file optimizations
    > IPO: generating object file /tmp/ipo_ifort4usUFH.o
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `vsCos'
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `vslDeleteStream'
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `vdSin'
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `viRngUniformBits'
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `vslNewStream'
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `vdCos'
    > /opt/intel/mkl/8.1.1/lib/32/libmkl_p4.so: undefined reference to
    > `vsSin'
    > make[2]: *** [example.LINUX_ICC_IA32.x] Error 1
    > make[2]: Leaving directory `/home/ron/Desktop/PROPACK/double/Examples'
    >
    > I figured out that the above undefined references are functions from
    > the Intel VML/VSL package, so I added -lmkl_vml_p4 after -lmkl_p4 in
    > the above ifort line, but it still generates the same errors.


    I realize this is an old post (which is why I quoted so much of it),
    but I recently received a request from an MKL developer to supply a
    response as follows:


    Instead of using -lmk_vml_p4 and -lmkl_p4 he should be using
    -lmkl and -lvml. The names are in these two files which will then
    dispatch the appropriate .so based on cpuid check the names in the
    processor specific .so's are decorated and that is why they will not
    help him directly.

    Linking information can be found in our Getting Started Guide:
    http://www3.intel.com/cd/software/products/asmo-na/eng/307884.htm. I
    looked it up and the information is there, but though we've changed
    this a thousand times, it always seems this could be arranged better.

    --

    Steve
     
    , Nov 11, 2006
    #4
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Rolf R Bakke
    Replies:
    1
    Views:
    1,306
    Ulf Samuelsson
    Sep 16, 2003
  2. Replies:
    3
    Views:
    891
    David Brown
    Jun 26, 2006
  3. justin
    Replies:
    12
    Views:
    471
    Simon Slavin
    Jul 21, 2003
  4. Michelle Steiner
    Replies:
    0
    Views:
    449
    Michelle Steiner
    Dec 8, 2007
  5. Philo D
    Replies:
    1
    Views:
    349
    hrh1818
    Dec 9, 2007
Loading...

Share This Page