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

Linking error on itanium64

xian-zhong_guous_cd-
488 Views
I got following linking error on itanium64:
/usr/bin/ld: skipping incompatible /data1/HOMES/test/hudson/workspace/dev_compile_ccmp_ia64/mkl/10.3.1/linux/lib/intel64/libmkl_intel_lp64.so when searching for -lmkl_intel_lp64

Does anyone have an idea how to fix it?

Thanks,
Sam


0 Kudos
9 Replies
mecej4
Honored Contributor III
488 Views
You have a mismatch between architecture (Itanium) and compiler target (Intel64/AMD64). If your machine is Itanium, install an IA64 compiler, not an Intel64 compiler.
0 Kudos
xian-zhong_guous_cd-
488 Views
I use g++. I don't understand what you mean "install an IA64 compiler".
0 Kudos
mecej4
Honored Contributor III
488 Views
In #1 you showed this part of the path searched for libraries:

dev_compile_ccmp_ia64/mkl/10.3.1/linux/lib/intel64/
but did not state which compiler you used.

I interpreted the linker message to signify that you had made the choice of "dev_compile_ccmp_ia64" as the installation directory on your Itanium system, but had mistakenly downloaded and installed a version of MKL intended for the AMD64/Intel64 architecture. Normally, the installer uses default subdirectory names such as .../intel64, rather than letting the user make the choice.

Now that you have clarified that you are using g++ as your compiler, the only conclusion is that you installed the wrong version of MKL. To confirm, you can run the standard Unix/Linux utility file on one of the MKL shared libraries. If it says anything other than IA64/Itanium, you have the wrong version of MKL; please download and install a version of MKL designed for IA64 (Itanium).
0 Kudos
xian-zhong_guous_cd-
488 Views
Here is the output of file:

brown lib/intel64> file libmkl_intel_lp64.so
libmkl_intel_lp64.so: ELF 64-bit LSB shared object, AMD x86-64, version 1 (SYSV), not stripped

I cannot tell what's wrong from the output.
0 Kudos
xian-zhong_guous_cd-
488 Views
Where can I download the MKL for IA64? I got MKL for linux which includes ia32 and intel64 only.
0 Kudos
TimP
Honored Contributor III
488 Views
As mecej4 pointed out, your MKL is the one built for the Intel64/AMD x86-64 OS. Thus, the version of gnu ld built for the Itanium IA64 architecture ignores the contents of the library files. There is no Itanium support in the current release of MKL offered to me. It appears that MKL 10.2 included Itanium support, even in the final update. The Itanium libraries would be in a /64/ or /ia64/ directory, while the Xeon architecture library files would be in /32/ and /em64t/ directories.
You would normally download the separate MKL at https://registrationcenter.intel.com/RegCenter/Download.aspx?productid=1347
where you need to set the pulldown menu selections to a version which includes IA64.
0 Kudos
xian-zhong_guous_cd-
488 Views
I found this from MKL 10.3 (which is what I am using) release note:
"Intel Itanium architecture (IA-64) support is not included in this release. Intel MKL 10.2 is the latest release for IA-64"

Does this mean IA64 will not be supported from 10.3?
0 Kudos
TimP
Honored Contributor III
488 Views
Sometimes in the past an update has been issued where a library for one platform was not updated. In this case, tuning in MKL 10.3 would have centered on the Sandy Bridge platform, so no need for Itanium update at this time. The previous release would still be supported for Itanium.
0 Kudos
Gennady_F_Intel
Moderator
488 Views
>>Does this mean IA64 will not be supported from 10.3?
the latest supported version of IA-64 is 10.2. Update 7. We are continue supporting IA-64 in this version only. In the case if
You will find the issue, please let us know and we will fix the problem but in 10.2 * only.
0 Kudos
Reply