- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have a large project in MSVC (2008) consisting of a C++ application and a Fortran static library. I have a quirky buildissue in Debug mode that leaves me with a choice between two poor options:
1) Under Fortran/Optimization, if I set "Interprocedural Optimization" to "No" (with Optimization set to "Maximum Speed", though I don't really care about optimization), then I am occasionally able to successfully build the Fortran static library, but most of the time I get:
1>Creating library...
1>Can't open file C:\\DOCUME~1\\bartojd1\\LOCALS~1\\Temp\\79562txt for write
1>xilib: error #10014: problem during multi-file optimization compilation (code 1)
1>xilib: error #10014: problem during multi-file optimization compilation (code 1)
(Note: the text file name it can't open,e.g. 79562txt,always changes)
If I keep building, then it eventually succeeds, though it may take 5-10 build attempts before a successful build. Very annoying. On the upside, when it does build, everything works correctly and I am able "step through" the fortran code while Debugging.
2) If I set "Interprocedural Optimization" to "Multi-file (/Qipo)" (with Optimization set to "Maximum Speed", though I don't really care about optimization), then I never get the above errors and everything builds and runs successfully. However, withthis optionI can't "step through" the fortran code while Debugging.
So, I can either have an easy build process, but sacrifice a useful debug feature, orlive witha painful build process. Were it just me, I'd change the settings depending on my needs, but in fact I am setting the MSVC solution upfor multiple developers, and I don't want them to have to change the settings.
I have a suspicion that the error #10014 results from not being able to open the Temp file (e.g. 72562txt), and thatxilib (most of the time)can't open the Temp file because ofmy anti-virus software, which I am not at liberty to change or turn off.
Any help would be greatly appreciated. Thanks!
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
So, the compiler successfully creates these temporary files and "owns" them, but at some point isn't able to overwrite it. But, later it can successfully delete the file. Aargh!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
First, yes, we know about the temporary file problem and we have our best people working on it :-) That said, I'm pretty sure it's a C-compiler only issue, not ifort. You said you had a project with mixed C and Fortran - is it possible that it's the C compiles that are issuing the failure to open the temp file, nor Fortran?
I'm going to assume that it is the C compiler, and to work around that, please go to the C property page, and in the "command line" section add theswitch
/Qmultisrc-
And, yes, this might resolve the xilib problem as well.
- Lorri
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The error (xilib: error #10014) definitely occurs during the Fortran compilation process. The project is a C++ executable dependent on a Fortran static library, so the Fortran static library (Sim_Fortran_Lib) is built before the C++ executable (Sim.exe). The project is quite large (hundreds of C++ and Fortran files), but I recompiled with only two files modified (Math_Funcs.f & main.cpp) to show you the build output:
1>------ Build started: Project: Sim_Fortran_Lib, Configuration: Debug Win32 ------
1>Compiling with Intel Visual Fortran 11.1.065 [IA-32]...
1>MATH_FUNCS.F
1>Creating library...
1>Can't open file C:\DOCUME~1\bartojd1\LOCALS~1\Temp\50122txt for write
1>xilib: error #10014: problem during multi-file optimization compilation (code 1)
1>xilib: error #10014: problem during multi-file optimization compilation (code 1)
1>
1>Build log written to "file://C:\Sim\Sim_Fortran_Lib\Debug\BuildLog.htm"
1>Sim_Fortran_Lib - 2 error(s), 0 warning(s)
2>------ Build started: Project: Sim, Configuration: Debug Win32 ------
2>Compiling...
2>main.cpp
2>Linking...
2>LINK : fatal error LNK1181: cannot open input file 'Sim_Fortran_Lib.lib'
2>Creating browse information file...
2>Microsoft Browse Information Maintenance Utility Version 9.00.21022
2>Copyright (C) Microsoft Corporation. All rights reserved.
2>c:\sim\matrix.h(59) : warning BK4504 : file contains too many references; ignoring further references from this source
2>Build log was saved at "file://c:\Sim\Debug\BuildLog.htm"
2>Sim - 1 error(s), 1 warning(s)
========== Build: 0 succeeded, 2 failed, 0 up-to-date, 0 skipped ==========
Any further thoughts are greatly appreciated, and thanks for the response,
Jeff
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Jeff -
Yes, I see now ... the problem you're having is a different one than I had pictured (( the other one is C-only, and is fixed by /Q_multisrc- ))
That aside, I'm not sure why your temp file cannot be opened. Yet. :-) I'll update this as I learn more.
- Lorri

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