Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
7234 Discussions

unresolved references with em64t (ok with ia32)

lel4866
Beginner
995 Views
When I compile the example code (calling zdotc) under Visual Studio 2005 using ia32 (specifiying mkl_c.lib as an Additional Dependency for the Linker), everything works fine and executes properly.

However, taking the same source code and specifying mkl_em64t_lib as an Additional Dependency for the Linker, I get:

error LNK2019: unresolved external symbol _zdotc referened in function _main

Same if I replace the call to zdotc with cbals_ddot (with appropriate source code changes).

Any suggestions?

Thanks.

Larry Lewis
0 Kudos
5 Replies
TimP
Honored Contributor III
995 Views
You need the em64t MKL libraries equivalent to those you used for the 32-bit build. If you are building both 32- and 64-bit on the same platform, I guess you could have difficulty if you depend on a default PATH setting which you may have selected when installing MKL.
0 Kudos
lel4866
Beginner
995 Views
I thought I did switch to the em64t libs: mkl_em64t.lib. It still gives unresolved external reference.
0 Kudos
lel4866
Beginner
995 Views
Also, I did a dumpbin of the two libs: 1ia32mkl_c.lib and em64tmkl_em64t.lib. ia32mkl_c.lib has virtually all of its defined symbols starting with a preceeding _, while em64tmkl_em64t.lib has none of it's symbols define with a preceeding underscore.

My guess is that this is the problem, but I don't know what caused it or how to get around it.
0 Kudos
Andrey_G_Intel2
Employee
995 Views

Could you tell us that version of MKL are you using?

0 Kudos
lel4866
Beginner
995 Views
I've tried both 9.1.027 and 10.0.006, but here's the solution (at least for 10.0.006):

1. You have to install the Visual Studio 2005 64-bit compilers (I hadn't)
2. You have to use the Configuration Manager in VS 2005 to set the Platform to x64
0 Kudos
Reply