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

ifort: error #10273:

Kunal_Rao
Novice
2,737 Views
Hi
I am using the Intel compilers from the cygwin environment in Windows. I am getting this error while compiling
and linking my application:
---------------
ifort: error #10273: Fatal error in C:\\PROGRA~2\\Intel\\Compiler\\11.1\\067\\bin\\intel64\\fortcom, terminated by 0xc0000005
---------------
Can you please let me know what does this error mean and how to resolve it ?
Thanks & Regards,
Kunal
0 Kudos
6 Replies
mecej4
Honored Contributor III
2,737 Views
First of all, using Ifort in a Cygwin environment needs some precautions to function correctly. In particular, the /usr/bin directory of Cygwin (which is mounted at \bin) should come at the end of your path. If you do not satisfy this, Cygwin's link.exe will be used instead of the Microsoft linker, which is also called link.exe. The two link.exe-s have totally different purposes.

Secondly, when you report errors, please post more context rather than just the last error message. This is because that last message merely shows the error in the step that gave your compilation the coup-de-grace. In this case, a subprocess that was run by Ifort returned a fatal error (C0000005 is a memory access error).

The simplest remedy is not to use Cygwin as your environment for IFort unless you understand how Cygwin interacts with Windows. If you wish to use Cygwin anyway, use the -V option to Ifort and post all the commands and the outputs of the commands, as well as a description of the file that you are attempting to compile. If the file is short, post it as well.
0 Kudos
TimP
Honored Contributor III
2,737 Views
Quoting Kunal Rao

I am using the Intel compilers from the cygwin environment in Windows. I am getting this error while compiling
and linking my application:
---------------
ifort: error #10273: Fatal error in C:\PROGRA~2\Intel\Compiler\11.1\067\bin\intel64\fortcom, terminated by 0xc0000005
---------------
Can you please let me know what does this error mean and how to resolve it ?

This is somewhat ambiguous. Are you trying a different method from those which have been described by others in the forum? As mecej4 mentioned, the first part of the error message is more important than the last.
If you set up so as to use a cygwin shell and make environment with ifort by opening an ifort command prompt window, then running cygwin.bat in that window, you will need to add the Microsoft linker path in ifort.cfg, along with your preferred default options, e.g.
# This Configuration file may be used for additional switches
-Qlocation,link,"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\amd64"
-assume:minus0,protect_parens,buffered_io,byterecl
-Qprec-div -Qprec-sqrt

You won't be able to link cygwin and ifort objects together, for multiple reasons:
1. cygwin doesn't support X64
2. gcc/gfortran Windows run-time isn't compatible with ifort
0 Kudos
Kunal_Rao
Novice
2,737 Views
First of all, using Ifort in a Cygwin environment needs some precautions to function correctly. In particular, the /usr/bin directory of Cygwin (which is mounted at \bin) should come at the end of your path. If you do not satisfy this, Cygwin's link.exe will be used instead of the Microsoft linker, which is also called link.exe. The two link.exe-s have totally different purposes.
-------------
Here, they have explained about that link.exe and I have done the required modifications so that it uses Microsoft linker. The-Qlocation,link,"$VCINSTALLDIR/bin" optionis being used with ifort. This is ensuring that I am using the Microsoft linker.
--------------
Secondly, when you report errors, please post more context rather than just the last error message. This is because that last message merely shows the error in the step that gave your compilation the coup-de-grace. In this case, a subprocess that was run by Ifort returned a fatal error (C0000005 is a memory access error).
--------------
This is the only error message that I get at the end. There is no error message before that, however the application crashes and here is more information about the crash:
----------

Problem signature:

Problem Event Name: APPCRASH

Application Name: fortcom.exe

Application Version: 0.0.0.0

Application Timestamp: 4c5ced07

Fault Module Name: ntdll.dll

Fault Module Version: 6.0.6001.18000

Fault Module Timestamp: 4791adec

Exception Code: c0000005

Exception Offset: 000000000003e8a0

OS Version: 6.0.6001.2.1.0.274.10

Locale ID: 2057

Additional Information 1: c453

Additional Information 2: abcc8f7853b48d9807d6d51eb1fa5df9

Additional Information 3: c453

Additional Information 4: abcc8f7853b48d9807d6d51eb1fa5df9

----------------

The simplest remedy is not to use Cygwin as your environment for IFort unless you understand how Cygwin interacts with Windows. If you wish to use Cygwin anyway, use the -V option to Ifort and postall thecommands and the outputs of the commands, as well as a description of the file that you are attempting to compile. If the file is short, post it as well.
---------------
I wish to use the Cygwin. As per your request about -v option..that is not recognized option by Ifort. If you are trying to get the version information. Here is that info:
---------
Intel Visual Fortran Intel 64 Compiler Professional for applications running on Intel 64, Version 11.1 Build 20100806 Package ID: w_cprof_p_111.067Copyright (C) 1985-2010 Intel Corporation. All rights reserved.ifort: command line warning #10006: ignoring unknown option '/v'
---------
Also, the Microsoft linker version being used is:
--------
Microsoft Incremental Linker Version 9.00.21022.08
Copyright (C) Microsoft Corporation. All rights reserved.
--------
My application contains lots of files and all are compiled properly, while linking I am getting that error.
Thanks & Regards,
Kunal
0 Kudos
mecej4
Honored Contributor III
2,737 Views
ignoring unknown option '/v': sorry, my slip. -v is for Linux; on Windows it is /watch:all. There is also an environmental variable called LINK which you can use to pass options to the linker to give more diagnostic output, e.g., to produce a map file.

The bug you ran into may be hard to track down, because it seems to happen in a program (LINK.EXE) which normally catches errors and returns an error code to the calling process but is now crashing instead. In such cases a dump of the LINK command line (or response file, if one was used) can be quite useful.

0 Kudos
Kunal_Rao
Novice
2,737 Views
Thanks mecej4 for your inputs. I will look into it !!
Regards,
Kunal
0 Kudos
Kunal_Rao
Novice
2,737 Views
Hi
I tracked down what was going on. There was a LIB macro in my Makefile and was overriding the paths set in the LIB environment variable. So, it was not finding the path to the intel and MS libraries while linking.
Once I removed that LIB macro, the compilation and linking went fine without the error.
Still not really sure, why the error reported was vague.
Thanks & Regards,
Kunal
0 Kudos
Reply