Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.

libmkl_intel_lp64.so incompatible

zer0nes
Beginner
432 Views
When I compile using:

mpiCC -o test test.o -L/opt/intel/mkl/lib/64 -lmkl -lvml -lm -lmpi

I got the following error:

/usr/bin/ld: skipping incompatible /opt/intel/mkl/lib/64/libmkl_intel_lp64.so when searching for libmkl_intel_lp64.so

What does it mean that the library is not compatible? It must have something to do with the x64 architecture but I can't be sure how to hack.

If you know how to fix this situation, I'd appreciate it.
0 Kudos
7 Replies
Gennady_F_Intel
Moderator
432 Views
Please check first architecture type on which you are working on. It may the on of the reason similar errors.You are linking with IA64 libraires( aka Itanium) but may be you need select em64t binaries.
--Gennady
0 Kudos
zer0nes
Beginner
432 Views
This is a university computer. Here's the information when using cat /proc/cpuinfo

processor : 0
vendor_id : AuthenticAMD
cpu family : 15
model : 67
model name : Dual-Core AMD Opteron Processor 1210
stepping : 2
cpu MHz : 1799.991
cache size : 1024 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht s
yscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy
bogomips : 3599.98
TLB size : 1024 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc

processor : 1
vendor_id : AuthenticAMD
cpu family : 15
model : 67
model name : Dual-Core AMD Opteron Processor 1210
stepping : 2
cpu MHz : 1799.991
cache size : 1024 KB
physical id : 0
siblings : 2
core id : 1
cpu cores : 2
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht s
yscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy
bogomips : 3599.99
TLB size : 1024 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc

The library was installed by the department system folks. With such information, can you tell how I should fix it? If you need more information for better help, let me know.

Thanks.
0 Kudos
Gennady_F_Intel
Moderator
432 Views
1) please change-L/opt/intel/mkl/lib/em64t instead of-L/opt/intel/mkl/lib/64
2)The link advisor at the top of the forum will give a suggestion appropriate to the platform combination
--Gennady
0 Kudos
zer0nes
Beginner
432 Views
Problem solved. Thank you.
0 Kudos
zer0nes
Beginner
432 Views
Ah, not quite solved. In the makefile, there's also -lvml. I found vml lib files in the em64t directory but the compiler keeps complaining

cannot find -lvml

Am I missing something?

Thanks for your help.
0 Kudos
Gennady_F_Intel
Moderator
432 Views
I have no idea. Just try to remove it. if you need VML functionality then all references will be resolved throughlibmkl_core lib.
btw, what version of MKL are you going to use?
0 Kudos
zer0nes
Beginner
432 Views
I removed it and it works. Thanks.
0 Kudos
Reply