- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I tried to use compile Fortran projects as static libraries with Microsoft VS 2015 and the latest Intel Fortran Compilers. Therefore we create the vfproj-Files and start devenv.exe to compile them as "Debug|Win32" or "Release|x64". We do so with VS2010 and Fortran 2011 which works fine so far.
We want to upgrade, unfortunately I cannot get this to work. Whenever I call devenv from my batch file with my vfproj-Project it works with "*|x64" and compiles the x64 static libraries to the configured x64 directories. If I try to compile "*|Win32" a Window opens which tells me I did the call incorrectly. Apparently "Win32" is the problem, which works fine with VS2010/IF2011. So we tried "*|x86" which works fine. It uses the Win32 configuration, unfortunately fortran compiles x64 objects into the x86 directories.
When compiling inside devenv we can create x86 and x64 files as desired.
But we cannot start Visual Studio on our build server and do this by hand for more than 90 static libs.
Additionally, last friday my evaluation period is expired. We don't have a running system so far and we're running out of ideas how to manage this.
So currently we cannot upgrade.
Maybe someone can give me the hint how to successfully compile fortran projects from comand line?
Thank you in advance
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Based on the description it sounds like there is a possible defect with our Fortran integrations in our 2017 release. I have to try recreating the scenario and then have our integrations developers investigate further.
If your support services for your what I presume is your default production configuration (VS2010/IVF2011) is not expired then you can use that with the VS2015/IVF2017 test environment also. If needed, we can discuss the evaluation expiration after we have an understanding the issue and determine whether there is a usable solution/work around.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have installed it on my development machine (W10, VS2015 Up1, Fortran 2015/4) last year. I had big problems with the 2016 version, even VS2015 crashed all the time, so I installed the 2015 version, which works better. I canceled this so far and restarted last month.
This year I reinstalled everything on a fresh Win10 virtual machine. I installed VS2015 Up3 and the latest Version of IF 2017 Up 1. Here I got the described errors. I moved back to my real machine, deinstalled VS 2015/1 and IF 2015 and installed VS2015/3 and IF 2017/1 which was updated to IF 2017/2. On both machines I have the identical behavior as described above.
We have one year of support, so currently I cannot do anything.
I personally would like to upgrade to VS2017 if IF would work reliably there.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I can reproduce this behavior with VS2015. More annoyingly, if I use /log to capture what is going on, no log is created.
For example:
C:\Projects\Console1>devenv console1.sln /build "Debug|Win32" /log log.txt The operation could not be completed. The parameter is incorrect.
It then gives the devenv /? output. But...
C:\Projects\Console1>devenv console1.sln /build "Debug|x64" /log log.txt 1>------ Build started: Project: Console1, Configuration: Debug x64 ------ 1>Compiling with Intel(R) Visual Fortran Compiler 17.0.2.187 [Intel(R) 64]...
(Still no log!)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Well, is here any progress?
May I reckon that the Update 3 appears in May and will work?
Should I start writing make skripts because of this?
Or should we stay on Visual Studio 2010/Intel Fortran until Microsoft does not allow to install it anymore?
What should I tell the people who have to pay for a new Intel Fortran licence? Currently I have to say: It does not work in the way it did. So we have to change something or we're stucked. We put already a lot of afford to make it run. So the update is already quite expensive and does not work.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I apologize for the delay. I was unable to recreate everything you described and then became distracted with other issues.
I looked at two different static Fortran library solutions 1) “x86 and x64” configurations (lib1 – no Win32 configuration), 2) “Win32 and x64” configurations (lib2 – no x86 configuration)
For lib2, I was unable to build the Win32 configuration. For unknown reasons, the devenv does not accept the “Win32” configuration argument and always reports the error “The parameter is incorrect”. When using “x86”, not surprising, nothing is built.
It seems devenv only accepts the “x86” configuration argument. This is something I need to discuss with our Integration developers.
As an aside, I tried building a MS C++ static library and it too does not build with the “Win32” configuration argument. It returns the same “The parameter is incorrect” error so I do not know if what we’re seeing with that is the cause of our integrations with VS.
For my lib1 solution/project, which has x86 and x64 configurations (no Win32), I can successfully build all configuration combinations of x86/x64 and Debug/Release.
I cannot reproduce all of what you described though.
When using “x86|Debug”, that’s accepted and the project builds. I can do this for both the Debug and Release configurations. I can also do the same with the x64 configuration. I’m am seeing no problems using devenv with any of those combinations.
However, when building the “x86” (either Debug or Release), what is odd/confusing is that the build output suggests the “<xxxx>|Win32” configuration is built, but it still does build. Ex.
C:\u724555\Lib1> devenv lib1.sln /build "release|x86" 1>------ Build started: Project: Lib1, Configuration: Release Win32 ------ 1>Compiling with Intel(R) Visual Fortran Compiler 17.0.1.143 [IA-32]... 1>Source1.f90 1>Creating library... 1> 1>Build log written to "file://C:\u724555\Lib1\Release\BuildLog.htm" 1>Lib1 - 0 error(s), 0 warning(s) ========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
I also confirmed (you can also see in the output above) that the IA-32 compiler is used for the x86 builds and via dumpbin I confirmed the resulting object files are x86 (not x64) and the build places them into the expected Debug/Release directories for the x86 configuration.
C:\u724555\Lib1> cd Release C:\u724555\Lib1\Release> dumpbin /headers Source1.obj Microsoft (R) COFF/PE Dumper Version 14.00.23026.0 Copyright (C) Microsoft Corporation. All rights reserved. Dump of file Source1.obj File Type: COFF OBJECT FILE HEADER VALUES 14C machine (x86) 3 number of sections 5900BF15 time date stamp Wed Apr 26 09:39:01 2017 1C9 file pointer to symbol table B number of symbols 0 size of optional header 0 characteristics
So, I am unable to re-create the aspect of the issue that you described where x64 objects are created in the x86 build directories. If that is not actually happening then it would seem the x86 configuration should be usable despite it reporting “Win32” being built.
If you have an example that can demonstrate the x64 objects being created in the x86 directories then we can investigate this further.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Kevin D (Intel) wrote:
I apologize for the delay. I was unable to recreate everything you described and then became distracted with other issues.
Thanks for your honesty, as a German I like straight words. Nevertheless to be forgotten doesn't help me in that issue and does not increase my trust to perceive Intel Fortran as a helpful tool.
Kevin D (Intel) wrote:
I looked at two different static Fortran library solutions 1) “x86 and x64” configurations (lib1 – no Win32 configuration), 2) “Win32 and x64” configurations (lib2 – no x86 configuration)For lib2, I was unable to build the Win32 configuration. For unknown reasons, the devenv does not accept the “Win32” configuration argument and always reports the error “The parameter is incorrect”. When using “x86”, not surprising, nothing is built.
Here it builds x64 if I have Win32 and x64 and use "x86".
Kevin D (Intel) wrote:
It seems devenv only accepts the “x86” configuration argument. This is something I need to discuss with our Integration developers.As an aside, I tried building a MS C++ static library and it too does not build with the “Win32” configuration argument. It returns the same “The parameter is incorrect” error so I do not know if what we’re seeing with that is the cause of our integrations with VS.
Our C++ parts are compiled with MSBuild, which is working. I have no problem to use x86 instead of Win32, but so far we have been already.
Kevin D (Intel) wrote:
When using “x86|Debug”, that’s accepted and the project builds. I can do this for both the Debug and Release configurations. I can also do the same with the x64 configuration. I’m am seeing no problems using devenv with any of those combinations.
Yepp, that compiles. We only don't get the desired x86 object files.
Kevin D (Intel) wrote:
C:\u724555\Lib1> devenv lib1.sln /build "release|x86"
1>------ Build started: Project: Lib1, Configuration: Release Win32 ------ 1>Compiling with Intel(R) Visual Fortran Compiler 17.0.1.143 [IA-32]... 1>Source1.f90 1>Creating library... 1> 1>Build log written to "file://C:\u724555\Lib1\Release\BuildLog.htm" 1>Lib1 - 0 error(s), 0 warning(s) ========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========I also confirmed (you can also see in the output above) that the IA-32 compiler is used for the x86 builds and via dumpbin I confirmed the resulting object files are x86 (not x64) and the build places them into the expected Debug/Release directories for the x86 configuration.
C:\u724555\Lib1> cd Release C:\u724555\Lib1\Release> dumpbin /headers Source1.obj File Type: COFF OBJECT FILE HEADER VALUES 14C machine (x86)So, I am unable to re-create the aspect of the issue that you described where x64 objects are created in the x86 build directories. If that is not actually happening then it would seem the x86 configuration should be usable despite it reporting “Win32” being built.
If you have an example that can demonstrate the x64 objects being created in the x86 directories then we can investigate this further.
Here we are:
Current Date is April 27th, Time was 11:20. The directory for the objectfiles is empty.
c:\source\for\strako01\build>date Aktuelles Datum: 27.04.2017 Geben Sie das neue Datum ein: (TT-MM-JJ) c:\source\for\strako01\build>time Aktuelle Zeit: 11:20:39,11 Geben Sie die neue Zeit ein: c:\source\for\strako01\build>dir Volume in Laufwerk C: hat keine Bezeichnung. Volumeseriennummer: 9A75-68C2 Verzeichnis von c:\source\for\strako01\build 27.04.2017 11:20 <DIR> . 27.04.2017 11:20 <DIR> .. 0 Datei(en), 0 Bytes 2 Verzeichnis(se), 307.392.532.480 Bytes frei c:\source\for\strako01\build>pm -cd -p vc14 strako01 c:\source\for\strako01\build>call planmake.bat -cd -p vc14 strako01 devenv-vc14.bat C:\source\for\strako01\strako01-vc14.vfproj /rebuild "Debug|x86" [INFO]: Env.var VS2015DIR not set! C:\Users\progr\AppData\Local\Temp\build-project-vc14.log "C:\Program Files (x86)\Microsoft Visual Studio 14.0"\common7\ide\devenv.exe C:\source\for\strako01\strako01-vc14.vfproj /rebuild "Debug|x86" /out C:\Users\progr\AppData\Local\Temp\build-project-vc14.log Das Paket "IFLangServicePackage" konnte nicht geladen werden. Das Paket "IFLangServicePackage" konnte nicht geladen werden. Das Paket "IFLangServicePackage" konnte nicht geladen werden. Das Paket "IFLangServicePackage" konnte nicht geladen werden. 1>------ Neues Erstellen gestartet: Projekt: strako01-vc14, Konfiguration: Debug x86 ------ 1>Deleting intermediate files and output files for project 'strako01-vc14', configuration 'Debug|x86'. 1>strako01-vc14: warning: TargetPath(C:\source\for\strako01\build\strako01-debug-vc14\strako01-vc14.lib) does not match the Library's OutputFile property value (c:\source\dicadkernel\lib\debug\x86\strako01d-vc14.lib). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Lib.OutputFile). 1>Compiling with Intel(R) Visual Fortran Compiler 17.0.2.187 [IA-32]...
Configuration x86, we're using the IA-32 Compiler.
compiling...
1>stwichte.for 1>rechtloe.for 1>ifnkey.for 1>fubel.for 1>cfnmakty.for 1>zeitmess.for 1>spoolnam.for 1>lfndrekr.for 1>textabme.for 1>ifnabmak.for 1>hwswlin.for 1>stift.for 1>getstida.for 1>C:\source\for\strako01\getstida.for(59): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [C_CONTAINER] 1>C:\source\for\strako01\getstida.for(445): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [C_CONTAINER] 1>compilation aborted for C:\source\for\strako01\getstida.for (code 1) 1> 1>Build log written to "file://C:\source\for\strako01\build\strako01-debug-vc14\BuildLog.htm" 1>strako01-vc14 - 93 error(s), 1 warning(s) ========== Alles neu erstellen: 0 erfolgreich, 1 fehlerhaft, 0 übersprungen ========== ======================================================================== strako01 ERROR (0 min, 12 sec) 1 TARGET(S) FAILED (0 min, 12 sec) c:\source\for\strako01\build>dir Volume in Laufwerk C: hat keine Bezeichnung. Volumeseriennummer: 9A75-68C2 Verzeichnis von c:\source\for\strako01\build 27.04.2017 11:20 <DIR> . 27.04.2017 11:20 <DIR> .. 27.04.2017 11:21 <DIR> strako01-debug-vc14 0 Datei(en), 0 Bytes 3 Verzeichnis(se), 307.391.774.720 Bytes frei
Compiling wasn't successful for every file, that's not important in that moment. The new directory has the name for the x86 configuration. So far so good.
c:\source\for\strako01\build>cd strako01-debug-vc14 c:\source\for\strako01\build\strako01-debug-vc14>dir Volume in Laufwerk C: hat keine Bezeichnung. Volumeseriennummer: 9A75-68C2 Verzeichnis von c:\source\for\strako01\build\strako01-debug-vc14 27.04.2017 11:21 <DIR> . 27.04.2017 11:21 <DIR> .. 27.04.2017 11:21 9.846 bewmodus.obj 27.04.2017 11:21 3.271 bildgwfu.obj 27.04.2017 11:21 123.410 BuildLog.htm ... 27.04.2017 11:21 8.299 spoint.obj 27.04.2017 11:20 3.666 spoolnam.obj 27.04.2017 11:21 4.480 stbcopy.obj 27.04.2017 11:20 9.188 stift.obj 27.04.2017 11:20 2.164 stwichte.obj ... 70 Datei(en), 589.800 Bytes 2 Verzeichnis(se), 307.391.774.720 Bytes frei c:\source\for\strako01\build\strako01-debug-vc14>dumpbin /HEADERS stift.obj Microsoft (R) COFF/PE Dumper Version 14.00.24215.1 Copyright (C) Microsoft Corporation. All rights reserved. Dump of file stift.obj File Type: COFF OBJECT FILE HEADER VALUES 8664 machine (x64) 8 number of sections 5901B7FB time date stamp Thu Apr 27 11:20:59 2017 1D6C file pointer to symbol table 3E number of symbols 0 size of optional header 0 characteristics ...
We have an x64 object file in the x86 directory by using the IA-32 compiler.
That's my main problem currently.
Lets do the same for x64:
C:\Users\progr>call planmake.bat -cdx -p vc14 strako01 devenv-vc14.bat C:\source\for\strako01\strako01-vc14.vfproj /rebuild "Debug|x64" [INFO]: Env.var VS2015DIR not set! C:\Users\progr\AppData\Local\Temp\build-project-vc14.log "C:\Program Files (x86)\Microsoft Visual Studio 14.0"\common7\ide\devenv.exe C:\source\for\strako01\strako01-vc14.vfproj /rebuild "Debug|x64" /out C:\Users\progr\AppData\Local\Temp\build-project-vc14.log Das Paket "IFLangServicePackage" konnte nicht geladen werden. Das Paket "IFLangServicePackage" konnte nicht geladen werden. Das Paket "IFLangServicePackage" konnte nicht geladen werden. Das Paket "IFLangServicePackage" konnte nicht geladen werden. 1>------ Neues Erstellen gestartet: Projekt: strako01-vc14, Konfiguration: Debug x64 ------ 1>Deleting intermediate files and output files for project 'strako01-vc14', configuration 'Debug|x64'. 1>strako01-vc14: warning: TargetPath(C:\source\for\strako01\build\strako01-debug-x64-vc14\strako01-vc14.lib) does not match the Library's OutputFile property value (c:\source\dicadkernel\lib\debug\x64\strako01d-x64-vc14.lib). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Lib.OutputFile). 1>Compiling with Intel(R) Visual Fortran Compiler 17.0.2.187 [Intel(R) 64]... 1>lfnsti.for
and so on... what's the result?
We have the correct directory and we have x64 object files.
c:\source\for\strako01\build>dir Volume in Laufwerk C: hat keine Bezeichnung. Volumeseriennummer: 9A75-68C2 Verzeichnis von c:\source\for\strako01\build 27.04.2017 11:53 <DIR> . 27.04.2017 11:53 <DIR> .. 27.04.2017 11:53 0 call 27.04.2017 11:21 <DIR> strako01-debug-vc14 27.04.2017 11:53 <DIR> strako01-debug-x64-vc14 1 Datei(en), 0 Bytes 4 Verzeichnis(se), 307.390.033.920 Bytes frei c:\source\for\strako01\build>dumpbin /HEADERS strako01-debug-x64-vc14\stift.obj Microsoft (R) COFF/PE Dumper Version 14.00.24215.1 Copyright (C) Microsoft Corporation. All rights reserved. Dump of file strako01-debug-x64-vc14\stift.obj File Type: COFF OBJECT FILE HEADER VALUES 8664 machine (x64) 8 number of sections 5901BF91 time date stamp Thu Apr 27 11:53:21 2017 1D80 file pointer to symbol table 3E number of symbols 0 size of optional header 0 characteristics
The file generated by the IA-32 has 9188 Bytes, the file of the Intel64 compiler has 9208 bytes.
At least instead of offering a 32bit and 64bit version we could offer two different 64 bit versions... which doesn't solve my problem but maybe noone becomes aware of it... but I don't think my boss would accept this as a solution. ;)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Within your property settings, under Properties > Fortran > Command Line please add the option /watch and then rerun the same x86 and x64 builds that you showed in your last post and send me both of the Buildlog.htm files:
C:\source\for\strako01\build\strako01-debug-vc14\BuildLog.htm
C:\source\for\strako01\build\strako01-debug-x64-vc14\BuildLog.htm
Could you also share your C:\source\for\strako01\strako01-vc14.vfproj and corresponding .sln file too.

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