I am using latest Intel C++ compiler integrated into MSVC 9.0 environment. When I perform DLL build, on linking phase it fails with "Access is denied." error. I found it is related to manifest resource embedding; when I disable embedding, it works fine, but the DLL is not working without embedded manifest.
I found workaround: perform full build with Intel C++ compiler with manifest embedding (this will fail on link phase), then switch IDE project to MSVC compiler and press F7 to build/link with MSVC compiler. This will not rebuild project, but only link and produce DLL with embedded manifest; however, I'm afraid I am loosing important link-time optimizations with this technique.
Embedding manifest/linking an EXE file works fine. I have this problem only with building DLL file.
What should I do?
Link time optimizations occur only with /Qipo or /fast, andmust have been carried out already when the .dll is made. If any link time optimizations were still pending, MSVC would have failed to link, as the ICL and MSVC whole program link optimizations aren't compatible.I think youshould not be concerned about the optimizations.
You might consider submitting your example with .dll which requires this work-around as a problem report on premier.intel.com.