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

ipo: error #11035: Fatal error cannot open library

Carmen_S_
Beginner
1,737 Views

Hello,

 

in order to change a LS-DYNA material subroutine, I installed Microsoft Visual Studio 2008 and the Fortran compiler 10.1. When I want to execute the nmake file via the fortran command window, I get the following error messages:

ipo: error #11035: Fatal error cannot open LIBCMT
ifort: error #10014: problem during multi-file optimization compilation <code1>
 
NMAKE: fatal error U1077: 'ifort' : return code '0x1'

 

I am a new Fortran user and do not know what they mean, so I googled it. But the answers were mostly vague, like "try to change the environment variables for xy" and I really don't want to make the situation even worse.

 

Thank you very much for your answers!

 

Best,

Carmen

0 Kudos
21 Replies
TimP
Honored Contributor III
1,488 Views

If you are using ifort Intel64 with VS2008, in your VS2008 installation options you must select C++ and the suboption for X64 development.  If you need to correct this, you would update VS then re-install ifort.

If you are using the ifort ia32, the basic C++ option in VS2008 would be sufficient.

Your LS-DYNA version (32- or 64-bit) must match the ifort you have chosen.

I haven't spoken with LS-DYNA Windows support for some time, but this seems a fairly old setup.  You would want to check that the ifort 10.1 and VS2008 combination is recommended for your version of LS-DYNA.

0 Kudos
Carmen_S_
Beginner
1,488 Views

I checked and LS-DYNA is the 64 bit version. When I want to download the Fortran installation file (I checked them again, although it is already installed, because I wanted to make sure I got the right one), I get the following two options for the version 10.1 (this is the required one for my LS-DYNA version):

Download:
Or:
Intel® Visual Fortran for IA-32 and Intel® 64 (for customers who have Microsoft Visual Studio* already installed)
Start download with a download manager
115 MB
  Intel® Visual Fortran for IA-64
Start download with a download manager
146 MB

 

Since Microsoft Visual Studio is already installed, I only need the first one, right? Is this then the ifort Intel64?

 

Thank you for your help so far!

0 Kudos
pbkenned1
Employee
1,488 Views

Yes, the one to download is the first one, 'Intel Visual Fortran for IA-32 or Intel 64'.  In the 10.x compiler series, we combined the 32-bit and 674-bit compiler in one package. Since you already have VS installed, the download package should contain the string 'novsppe' in the package name. 

 

Patrick

0 Kudos
Carmen_S_
Beginner
1,488 Views

Ok, thank you! So I know that I installed the right file and I made the adjustment to 64x.

Now I am encountering a new problem, which might be related but not necessarily: Last week, I could debug Fortran files in MSVS without problems. But now, when I want to debug the standard "Hello world" start file, I get the error message 

"Visual Studio cannot debug because the debug target 'C:\...\console1.exe' is missing"

I googled the problem and found various solutions, which are apparently not the solution to my problem. I could not find the .exe file on the whole PC so it seems that the build command is erroneous. It is writing a log file though, which is 

   
 

Build started: Project: Console1 Configuration: Debug|x64

Output
   
Deleting intermediate files and output files for project 'Console1', configuration 'Debug|x64'.

Console6 - 0 error(s), 0 warning(s)

 

whereas it used to be:

Build Log
   
 

Build started: Project: Console3, Configuration: Debug|Win32

Output
   
Compiling with Intel(R) Fortran Compiler 10.1.034 [IA-32]...
ifort /nologo /Zi /Od /gen-interfaces /warn:interfaces /module:"Debug\\" /object:"Debug\\" /traceback /check:bounds /libs:static /threads /dbglibs /c /Qvc9 /Qlocation,link,"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin" "C:\Users\carmensc\Documents\Visual Studio 2008\Projects\Console3\Console3\Console3.f90"
Linking...
Link /OUT:"Debug\Console3.exe" /INCREMENTAL:NO /NOLOGO /MANIFEST /MANIFESTFILE:"C:\Users\carmensc\Documents\Visual Studio 2008\Projects\Console3\Console3\debug\console3.exe.intermediate.manifest" /DEBUG /PDB:"C:\Users\carmensc\Documents\Visual Studio 2008\Projects\Console3\Console3\debug\console3.pdb" /SUBSYSTEM:CONSOLE /IMPLIB:"C:\Users\carmensc\Documents\Visual Studio 2008\Projects\Console3\Console3\debug\console3.lib" "Debug\Console3.obj"
Link: executing 'link'

Embedding manifest...
mt.exe /nologo /outputresource:"C:\Users\carmensc\Documents\Visual Studio 2008\Projects\Console3\Console3\debug\console3.exe;#1" /manifest "C:\Users\carmensc\Documents\Visual Studio 2008\Projects\Console3\Console3\debug\console3.exe.intermediate.manifest"

Console3 - 0 error(s), 0 warning(s)

So,the compiling has a problem, but I did not change anything. Apparently, shutting the PC down over the weekend changed some settings?

Has anybody a solution to this problem? Why does 'build' delete files instead of compile the file?

Thank you again!

 

0 Kudos
pbkenned1
Employee
1,488 Views

Instead of doing 'Build' from the IDE, try 'Rebuild All'.  It appears 'Build' left some artifacts from your Console1 project.  You did a build of 'Console3.exe', not 'Console1.exe.

 

Patrick

0 Kudos
TimP
Honored Contributor III
1,488 Views

As your LS-DYNA is a 64-bit version, you must take care that you are using the ifort Intel64, where you may have installed both the ia32 and intel64 compilers.  Your quotation indicates that you made the wrong choice in opening up your ifort command prompt.  If you were building in a VS project, it should remember when you have set X64 mode at a previous time, but I suppose you are following LS-DYNA instructions to use a command line.

0 Kudos
pbkenned1
Employee
1,488 Views

I doubt 'shutting the PC down over the weekend' would have any effect on MSVS or a solution (.sln) file. 

It is unlikely that uninstalling/reinstalling MSVS will fix your issue.  It's not clear to me if an executable was actually created, or if the VS debugger simply cannot find it.  Let's check the first possibility.

Let's say your project is named 'Console6' (so the solution is named Console6.sln). 

When you do an x64 Debug build, by default the linker will then create the executable in /OUT:"x64\Debug\Console6.exe".  Of course, this is a relative pathname; the full pathname to the executable depends on where you chose to create the project.  For example, if I choose to create a project named 'Console6'  in C:\ISN_Forums\U517441, then Visual Studio would create a subdirectory 'Console6' underneath C:\ISN_Forums\U517441, and the resulting directory structure would be:

C:\ISN_Forums\U517441\Console6

C:\ISN_Forums\U517441\Console6\x64

C:\ISN_Forums\U517441\Console6\x64\Debug

The full pathname to the executable would then be C:\ISN_Forums\U517441\Console6\x64\Debug\Console6.exe.

 

You don't have to accept the defaults.  Tell Visual Studio to create the executable somewhere else.  In the VS IDE, please do:

Project > Properties > Linker > General > Output File > [enter the fully qualified pathname to where ever you want the executable]

After doing a 'Rebuild', does the executable get placed in the above?

Patrick

caveat:  I don't have VS2008 installed (rather, VS2012 & VS2013), but I don't think the linker property page will be any different.

0 Kudos
Carmen_S_
Beginner
1,488 Views

I entered the full pathname (how it should be at my PC), but when I click "Rebuild solution" it says 

========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========

 

but there is still no executable. So the build setting is wrong, isn't it?

 

0 Kudos
pbkenned1
Employee
1,488 Views

Hello Carmen,

Can you please clean your Visual Studio project, zip it up, and attach it here?  Also, please attach the build log. 

Thanks,

Patrick

0 Kudos
Carmen_S_
Beginner
1,488 Views

Here is the whole project folder as a zip-folder. This is just my example project, since even this is not working. Thank you very much!

0 Kudos
mecej4
Honored Contributor III
1,488 Views

You have set the x64 EXE output path as "C:\Users\carmensc\Documents\Visual Studio 2008\Projects\Console6\Console6\x64\Debug\Console6.exe". I do not have a C:\Users\carmensc" folder on my system, so this fails for me.

Once I changed the location to <inherit from project defaults>, I was able to build the example. In the Solution Explorer of VS, right click on Console6, select "properties", then choose "Configuration Properties->Linker->General->Output File", Click in the value box and select <inherit from project defaults>. The contents should now show "$(OutDir)\$(ProjectName).exe". 

 

0 Kudos
pbkenned1
Employee
1,488 Views

Thanks mecej4, that works for me as well.  I had suggested to set the EXE output path as an absolute pathname to try to verify that VS actually created the executable.  I'd now say that for Carmen, if setting "$(OutDir)\$(ProjectName).exe" still fails to produce an executable, something is broken with VS.

Patrick

0 Kudos
Carmen_S_
Beginner
1,488 Views

Thank you guys, I changed it back to the default folder and still get 

"Deleting intermediate files and output files for project 'Console6', configuration 'Debug|x64'."

as a message after "clean solution" and "build solution". Or is this sequence wrong, do I have to clean and build the whole Project Console6 first?

 

So what would you suggest to do?

0 Kudos
mecej4
Honored Contributor III
1,488 Views

"Deleting intermediate files..." is a normal informative message and does not signify that anything went wrong.

On my system, I put your zip file into S:\lang. After extraction and building, this is what I see:

 Directory of S:\lang\Console6\Console6\x64\Debug

07/10/2014  09:53 AM    <DIR>          .
07/10/2014  09:53 AM    <DIR>          ..
07/10/2014  09:56 AM             3,782 BuildLog.htm
07/10/2014  09:56 AM             2,360 Console6.obj
07/10/2014  09:56 AM            45,056 vc110.pdb
07/10/2014  09:56 AM               381 Console6.exe.intermediate.manifest
07/10/2014  09:56 AM         2,345,984 Console6.pdb
07/10/2014  09:56 AM         1,280,512 Console6.exe
               6 File(s)      3,678,075 bytes
               2 Dir(s)      10,813,440 bytes free

Not only is the EXE fire located where it is expected, but I am able to step through the program line by line (nothing unusual about that!).

0 Kudos
Carmen_S_
Beginner
1,488 Views

So, is a setting of VS the problem or should I better deinstall the two things and install them afterwards again?

0 Kudos
mecej4
Honored Contributor III
1,488 Views

Reinstalling should be left aside for use as a last resort if everything else fails.

Do note that you may be using older versions of VS and IFort than many of the responders here, so what we say may not always apply or may need adjustment to match your versions.

0 Kudos
pbkenned1
Employee
1,488 Views

I agree with mecej4, uninstalling/reinstalling VS should be a last resort.  Both mecej4 and I were able to build the solution you attached (Console6_1.zip) with no issues, except that the linker output needed to be changed to  "$(OutDir)\$(ProjectName).exe" (which is the standard setting).

It's still a big mystery to me why no executable is created.  Can I suggest you take Console6_1.zip, create a temporary directory under C:\, place Console6_1.zip in that directory, and extract the contents. 

Make the change that mecej4 made for the linker output file.  This will insure that the build artifacts (including the executable) will be created underneath your temporary directory, rather than somewhere under C:\Users\carmensc\Documents\Visual Studio 2008\Projects.

If you build 'successfully' and still do not see an executable underneath your temporary directory, I can only suggest uninstalling/reinstalling VS.

Patrick

0 Kudos
andrew_4619
Honored Contributor II
1,488 Views

I downloaded the project loaded and into VS2010. I will note that in the zip download none of the build logs show a compile stage, it is like VS thinks the project is already built. Anyway updating the link path as per #12 and then did 'clean solution' and then 'build solution' the build log is as follows:

 	 	
 Build started: Project: Console6, Configuration: Debug|x64 

Output
 	 	
Compiling with Intel(R) Visual Fortran Compiler XE 14.0.3.202 [Intel(R) 64]...
ifort /nologo /debug:full /Od /warn:interfaces /module:"x64\Debug\\" /object:"x64\Debug\\" /Fd"x64\Debug\vc100.pdb" /traceback /check:bounds /libs:static /threads /dbglibs /c /Qvc10 /Qlocation,link,"c:\Program Files (x86)\Microsoft Visual Studio 10.0\Intel Fortran\Microsoft Files\VC\\bin\amd64" "C:\Users\Andrew\Desktop\Console6\Console6\Console6.f90"
Linking...
Link /OUT:"x64\Debug\Console6.exe" /INCREMENTAL:NO /NOLOGO /MANIFEST /MANIFESTFILE:"C:\Users\Andrew\Desktop\Console6\Console6\x64\Debug\Console6.exe.intermediate.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"C:\Users\Andrew\Desktop\Console6\Console6\x64\Debug\Console6.pdb" /SUBSYSTEM:CONSOLE /IMPLIB:"C:\Users\Andrew\Desktop\Console6\Console6\x64\Debug\Console6.lib" "x64\Debug\Console6.obj"
Link: executing 'link'

Embedding manifest...
mt.exe /nologo /outputresource:"C:\Users\Andrew\Desktop\Console6\Console6\x64\Debug\Console6.exe;#1" /manifest "C:\Users\Andrew\Desktop\Console6\Console6\x64\Debug\Console6.exe.intermediate.manifest"

Console6 - 0 error(s), 0 warning(s

 

If it is still not working try closing the solution, create a new solution and then create a new main program console project. It maybe the solution is broken, I cannot tell as the solution gets upgraded from 2008 to 2010 when I open it. 

 

 

0 Kudos
Carmen_S_
Beginner
1,488 Views

Thank you Patrick and app4619,

I tried a new solution, but there I get the same error message. Could it be that the setting for build is wrong so that build does not actually do anything?

Then I deinstalled both, MSVS and Fortran and I reinstalled both. That went well, no error messages. I made a new solution and tried to debugg it - and I get the same error again! Probably the MSVS setting was somewhere stored. I am getting really frustrated. BTW I get now also the error when I click on debugg, that the project would be out of date and then the question, if I would like to build it. But this build does not do anything.

Thank you for your help!

0 Kudos
pbkenned1
Employee
1,330 Views

Maybe this is something specific to VS2008 and/or the 10.1 compiler.  I'll install those and test with the solution you posted.  I don't see that any of the responders on this thread have tried that combination, probably most folks have moved on to later versions of the tools.  But I know you need these particular versions for your LS_DYNA work.

 

Perhaps when your solution gets automatically upgraded to a later version of VS, the underlying problem gets 'fixed'.

Patrick

0 Kudos
Reply