- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
When running the executable file, I am finding that the file libiomp5md.dll is needed. I would much prefer to NOT need the .dll file at runtime.
I see that there is a static version by the same name, ending with .lib, in the lib folder installed with the compiler. However, I have not been able to find a way to force the compiler to use the static version of the library when compiling the program.
Further, I do not know what this particular .dll file does, so I am not sure how it is being invoked in my program. I call programs from the IMSL libraries, which may in turn be invoking the .dll supplied by Intel.
How can I compile the program so a .dll file is not needed at runtime?
I see that there is a static version by the same name, ending with .lib, in the lib folder installed with the compiler. However, I have not been able to find a way to force the compiler to use the static version of the library when compiling the program.
Further, I do not know what this particular .dll file does, so I am not sure how it is being invoked in my program. I call programs from the IMSL libraries, which may in turn be invoking the .dll supplied by Intel.
How can I compile the program so a .dll file is not needed at runtime?
1 Solution
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Tim had a typo - it is /Qopenmp-link:static
If you are using IMSL, do you have a line:
!DEC$ OBJCOMMENT LIB:'libiomp5md.lib'
in one of your sources? If so, change the file name to libiomp5mt.lib
If you are using IMSL, do you have a line:
!DEC$ OBJCOMMENT LIB:'libiomp5md.lib'
in one of your sources? If so, change the file name to libiomp5mt.lib
Link Copied
5 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The MS linker cannot directly link your objects to DLLs. It uses an imports library, such as libiomp5.lib, instead.
If you do not have an equivalent static library, you are stuck with having to use the DLL at run time.
If you do not have an equivalent static library, you are stuck with having to use the DLL at run time.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The OpenMP library is required by the MKL threaded library, as well as by any OpenMP calls in your program or in IMSL. The option /Qopenmp-link:static has been provided in some versions of ifort, or you can link libiomp5mt.lib explicitly, if you take care not to link more than once against any of the libiomp, libguide, or vcomp versions.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I tried the option that you specified, but I received the message "ignoring unknown option," so it must not be available in my version (Professional).
I need a better understanding of what you mean by linking the .lib file explicitly. Is this something I can accomplish with a use or include statement in my code, even if IMSL is calling this library? I think I understand how to specify additional library directories, but not how to explicitly link a particular file.
I need a better understanding of what you mean by linking the .lib file explicitly. Is this something I can accomplish with a use or include statement in my code, even if IMSL is calling this library? I think I understand how to specify additional library directories, but not how to explicitly link a particular file.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Tim had a typo - it is /Qopenmp-link:static
If you are using IMSL, do you have a line:
!DEC$ OBJCOMMENT LIB:'libiomp5md.lib'
in one of your sources? If so, change the file name to libiomp5mt.lib
If you are using IMSL, do you have a line:
!DEC$ OBJCOMMENT LIB:'libiomp5md.lib'
in one of your sources? If so, change the file name to libiomp5mt.lib
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Making the change in this line seems to have worked. Thank you.

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page