Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Rex__Ren
Beginner
887 Views

Runtime error with the libirng.so (undefined symbol: _intel_avx_rep_memcpy) for icpc of Intel Parallel Studio 2018.1.163

On Ubuntu Virtualbox, I can generate a '.so' file without problem using the 'icpc' command of Intel Parallel Studio 2018.1.163. However, when I run the program linked with the '.so' file, there is an error saying:

symbol lookup error: /opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64/libirng.so: undefined symbol: __intel_avx_rep_memcpy

Does anyone know how I can fix this? Is it related to LD_LIBRARY_PATH or anything else?

My 'LD_LIBRARY_PATH' is shown below:

/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64:/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/mpi/intel64/lib:/opt/intel/compilers_and_libraries_2018.1.163/linux/mpi/mic/lib:/opt/intel/compilers_and_libraries_2018.1.163/linux/ipp/lib/intel64:/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/mkl/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/tbb/lib/intel64/gcc4.7:/opt/intel/compilers_and_libraries_2018.1.163/linux/tbb/lib/intel64/gcc4.7:/opt/intel/debugger_2018/iga/lib:/opt/intel/debugger_2018/libipt/intel64/lib:/opt/intel/compilers_and_libraries_2018.1.163/linux/daal/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64:/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/mpi/intel64/lib:/opt/intel/compilers_and_libraries_2018.1.163/linux/mpi/mic/lib:/opt/intel/compilers_and_libraries_2018.1.163/linux/ipp/lib/intel64:/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/mkl/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/tbb/lib/intel64/gcc4.7:/opt/intel/compilers_and_libraries_2018.1.163/linux/tbb/lib/intel64/gcc4.7:/opt/intel/debugger_2018/iga/lib:/opt/intel/debugger_2018/libipt/intel64/lib:/opt/intel/compilers_and_libraries_2018.1.163/linux/daal/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64:/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/mpi/intel64/lib:/opt/intel/compilers_and_libraries_2018.1.163/linux/mpi/mic/lib:/opt/intel/compilers_and_libraries_2018.1.163/linux/ipp/lib/intel64:/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/mkl/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/tbb/lib/intel64/gcc4.7:/opt/intel/compilers_and_libraries_2018.1.163/linux/tbb/lib/intel64/gcc4.7:/opt/intel/debugger_2018/iga/lib:/opt/intel/debugger_2018/libipt/intel64/lib:/opt/intel/compilers_and_libraries_2018.1.163/linux/daal/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64:/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/mpi/intel64/lib:/opt/intel/compilers_and_libraries_2018.1.163/linux/mpi/mic/lib:/opt/intel/compilers_and_libraries_2018.1.163/linux/ipp/lib/intel64:/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/mkl/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/tbb/lib/intel64/gcc4.7:/opt/intel/compilers_and_libraries_2018.1.163/linux/tbb/lib/intel64/gcc4.7:/opt/intel/debugger_2018/iga/lib:/opt/intel/debugger_2018/libipt/intel64/lib:/opt/intel/compilers_and_libraries_2018.1.163/linux/daal/lib/intel64_lin:/opt/intel/compilers_and_libraries_2018.1.163/linux/daal/../tbb/lib/intel64_lin/gcc4.4::/opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64_lin:/lib/x86_64-linux-gnu:/lib64


 

0 Kudos
9 Replies
Viet_H_Intel
Moderator
887 Views

 

Can you run: "ldd /opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64/libirng.so" to see if it can find libintlc.so.5?

Thanks,

Viet

Rex__Ren
Beginner
887 Views

Dear Viet,

After I run the command you suggest, the information below is printed on the terminal. It seems it can find 'libintlc.so.5', do you have any comments on this? Thanks!

    linux-vdso.so.1 =>  (0x00007fff68ba4000)
    libintlc.so.5 => /opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64/libintlc.so.5 (0x00007effa0d37000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007effa096d000)
    /lib64/ld-linux-x86-64.so.2 (0x0000562f3c45b000)

 

Rex

 

 

Viet Hoang (Intel) wrote:

 

Can you run: "ldd /opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64/libirng.so" to see if it can find libintlc.so.5?

Thanks,

Viet

Viet_H_Intel
Moderator
887 Views

Can you try ldd on your *.so to see if dependency was missing?

Thanks,

Viet 

Rex__Ren
Beginner
887 Views

Hi Viet,

After my tried ldd *.so, the information below is printed on the terminal:

linux-vdso.so.1 =>  (0x00007ffc34da8000)
    libirc.so => /opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64/libirc.so (0x00007ff2073a2000)
    libirng.so => /opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64/libirng.so (0x00007ff20702e000)
    libintlc.so.5 => /opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64/libintlc.so.5 (0x00007ff206dc1000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ff2069f6000)
    libifport.so.5 => /opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64/libifport.so.5 (0x00007ff2067c7000)
    libifcoremt.so.5 => /opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64/libifcoremt.so.5 (0x00007ff206433000)
    libsvml.so => /opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64/libsvml.so (0x00007ff204d7f000)

...

As you can see that again the 'libintlc.so.5' can be found. Do you have any additional comments?

Thanks,

Rex

 

Viet Hoang (Intel) wrote:

Can you try ldd on your *.so to see if dependency was missing?

Thanks,

Viet 

Henrique_M_
Beginner
887 Views

Did you manage to solve the problem?

I started getting the following message after updating to intel compilers 2018:

ERROR: 1> /Intel/compilers_and_libraries_2018.2.199/linux/compiler/lib/intel64/libirng.so: undefined reference to `__intel_skx_avx512_memcpy'

ERROR: 1> collect2: error: ld returned 1 exit status

I have run the ldd on the file libirng.so and the result is:

linux-vdso.so.1 =>  (0x00007ffdcd172000)
libintlc.so.5 => /data2/dev_rio/Intel/compilers_and_libraries_2018.2.199/linux/compiler/lib/intel64/libintlc.so.5 (0x00007f63f748e000)
libc.so.6 => /lib64/libc.so.6 (0x00007f63f70e2000)
/lib64/ld-linux-x86-64.so.2 (0x0000003d66000000)

Anyone has any clue on how can I solve that?

Henrique_M_
Beginner
887 Views

I ran nm in this library (libirng.so) just to see whether there was any missing symbols therein. For my surprise, I got the following output:

...
0000000000012980 t __intel_lcong48__skx256
                 U __intel_mic_avx512f_memcpy
                 U __intel_skx_avx512_memcpy
...

For what I understand, U means that the symbol is undefined.

Does that ring any bell? Moderators, should I open another thread for it? 

887 Views

hello, did you link with libirc?

to check you can try the following trick:

LD_PRELOAD=/Intel/compilers_and_libraries_2018.2.199/linux/compiler/lib/intel64/libirc.so <your app and command line>

--Vladimir

Henrique_M_
Beginner
887 Views

Hi Vladimir,

Same problem. I tried this trick before (although with the libirng.so library and defining the LD_PRELOAD variable with env in front of it since I am using tcsh here, not bash. ; )

Anyway, it is not a linker problem because I already have the directory of this library defined in the path.

Let me elaborate a bit more my problem, I am trying to compile a source code with g++ using Makefile. This code is compiling fine with the 2017 Intel libraries, the problem is only happening with the 2018 Intel libraries.

Another thing that is worth mentioning and which differs from the environment that is working is that I am running everything through a virtual machine on this one.

Henrique_M_
Beginner
887 Views

Well, it seems that the problem was due to the installation be done in the virtual machine.

What I did to solve the problem was installing the intel compilers/libraries in the host machine and exporting it via nfs to the virtual machine. After that I was able to link against the intel libraries with no problem.

Another thing that might be the reason for that to work this time is that at first I was using the Parallel Studio XE 2018 update 2. When I reinstalled it in the host machine I used the new update 3 release.

Reply