Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
28442 Discussions

intel compiler librairies to link into a dll

crdp
Beginner
367 Views
Hello,
I have a C project (to generate a dll including fortran static librairies) that I compile with XP-32bits/VS2003/Intel Fortran compiler 8.0. Now I would like to compile it with W7-64bits/VS2010/Intel Fortran 2011.
in 32bits I link several intel fortran compiler libraries (libifcore, libifport, ifconsol, libirc, etc..). What should I link for 64 bits ? As far as I understand, I now have a "multithread project" : Which libraries should i link now? the same ? those with the same name except "md" at the end ?
I am a bit lost, thanks a lot !

0 Kudos
3 Replies
Steven_L_Intel1
Employee
367 Views
The "md" libraries are the DLL import libraries, so if that's what you want, use those. The documentation has a list of the libraries and their descriptions. The library names don't change between 32 and 64 bits - the folder containing the libraries does.
0 Kudos
mecej4
Honored Contributor III
367 Views
With earlier versions of Windows, compilers were usually delivered with single-threaded static libraries (e.g., LIBC.LIB). Over the years there has been a shift towards dynamic (*MD.LIB) and multithreaded (*MT.LIB) libraries. Microsoft no longer issues static single-threaded libraries.

Debug versions of the libraries have an extra 'D' added to the name (e.g., MSVCRTD.LIB).
0 Kudos
crdp
Beginner
367 Views
Thanks for your answers.
I realized that I mixed 2 problems : let's forget at this time the Multithread and focus on the upgrade xp/32b seven/64b.
sorry but i am new with this kind of things.

Before, I had to build C++ dll, linking :

static fortran libraries (intel compiled).
libifcore.lib
libm.lib
ifconsol.lib

and the "herited values" of :
kernel32.lib, user32.lib, gdi32.lib, winspool.libcomdlg32.lib, advapi32.lib, shell32.lib, ole32.lib; oleaut32.lib, uuid.lib, odbc32.lib, odbccp32.lib.

on 7 / 64 b with the same links and herited values, i have linker errors (lnk2001) like external symbol for_emit_diagnostic non resolved, related to my fortran static librairies.
as far as i see, i did not link with libc.lib (maybe by default ?)
what should I change on seven x64 in order it compiles ? I suppose the ***32.lib have to be changed...

Thanks a lot !



0 Kudos
Reply