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

cygwin + ifort : error 10036 ?

ratel__gilles
Beginner
585 Views
I would compile programme into cygwin environment but with ifort I get error #10036


I run: (Win 7 startbutton)
Intel Parallel Sudio XE 2011/Command Prompt/Parallel Studio XE with Intel Compiler XE v12.0 Update 4/IA-32 Visual Studio 2010 mode

I look environnment vairiable
C:\\Program Files (x86)\\Intel\\ComposerXE-2011>set VCINSTALLDIR
VCINSTALLDIR=c:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\

and start cygwin
C:\\Program Files (x86)\\Intel\\ComposerXE-2011>C:\\Cygwin\\Cygwin.bat

At cygwin home I have a .bash_profile

$ more .bash_profile
alias ifort='ifort -Qlocation,link,"$VCINSTALLDIR/bin"'
alias icl='icl -Qlocation,link,"$VCINSTALLDIR/bin"'

and verify alias
$ alias
alias icl='icl -Qlocation,link,"$VCINSTALLDIR/bin"'
'lias ifort='ifort -Qlocation,link,"$VCINSTALLDIR/bin"
alias mc='. /usr/share/mc/bin/mc-wrapper.sh'

I would compile minimalist code
$ dir mini*
minimalist.f90

$ more minimalist.f90
PROGRAM MINIMALIST

WRITE(*,*)"PROGRAM MINIMALIST"

END PROGRAM MINIMALIST

Now I execute ifort command:

$ ifort minimalist.f90
Intel Visual Fortran Compiler XE for applications running on IA-32, Version 12.0.4.196 Build 20110427
Copyright (C) 1985-2011 Intel Corporation. All rights reserved.

'fort: error #10036: unable to run 'c:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\\\bin

$ dir mini*
minimalist.f90 minimalist.obj

I have a compilation ( minimalist.obj ) but ifort not create executable ?

Where is the probleme ? What is the solution ?

0 Kudos
3 Replies
TimP
Honored Contributor III
585 Views

You must be more careful about your spelling and quoting of the path to the folder which includes Microsoft link. Rather than attempting to include options in an alias, why not put them in ifort.cfg and icl.cfg ? That would avoid having to deal with specification of Windows shell paths for this purpose in bash. Note that ifort takes no notice of your starting it from bash; it still uses cmd path syntax to find link.exe.

If you start cygwin.bat inside the Intel compiler cmd shell window, it's relatively easy. If you prefer something more difficult, don't assume we can guess your preference.

0 Kudos
mecej4
Honored Contributor III
585 Views
I use Cygwin and Intel compilers together almost every day. The problems that you ran into arose because of running Cygwin.bat -- it causes the Cygwin directories /usr/local/bin and /usr/bin first in %PATH%. A simple solution is to simply type at the Intel Compiler Command Window:

X:\ > path %path%;c:\cygwin\usr\bin

That way, the Cygwin utilities are used only if a Windows program of the same name does not exist. A prominent example is link.exe, which has completely different purposes in the two environments. The Cygwin shell also filters some built-in commands from CMD.EXE, such as time, which conflict with Cygwin commands.
0 Kudos
jeffrey-mcaninch
Beginner
585 Views
I am also struggling to build a couple of 3rd party packages using Cygwin and the Intel compilers (ifort and icl are required).
The packages use configure and make.
Could you expand on your post above to give more details going from setting the environment to actually invoking the build commands under bash?
You first modified the path to ensure c:\cygwin\usr\bin was at the end. But then are you invoking the cygwin bash shell from Cmd.exe then? Did the environment transfer?
I tried the following from Cmd.exe shell:
ipsxe-comp-vars.bat intel64 vs2010
c:\cygwin\bin\bash
This may or may not have transferred the Intel/VS environment correctly. I couldn't tell because it appeared there was some kind of encoding difference, so there were lots of strange character decodings in the output, for instance when I tried to do "ls" and other simple commands. So I couldn't even do any testing of ifort.
0 Kudos
Reply