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

Unable to run '<Microsoft VC++ Dir>\Bin'

lucaslehmer
Beginner
4,713 Views
Hello all,

I'm new to this forum and have just installed the trial-version of Intel's Visual Fortran Compiler for Windows. (I'm running Win-XP Prof.)

However, after my first compilation, from DOS mode (command: ifort test.f90), I got the strange message

ifort: Unable to run '\Bin'

So, the compilation itself seems to be ok, and a file test.obj is created, but no sign of a file test.exe (as I was hoping...)

Since the error message itself doen't tell me much, I am asking here what I am doing wrong.
I anyone can tell me what to do, I would be much obliged!

Regards, Lucas
0 Kudos
32 Replies
Steven_L_Intel1
Employee
1,533 Views
Interesting. Please post the contents of C:Program FilesIntelCompilerFortran9.1ia32inifortvars.bat
0 Kudos
TimP
Honored Contributor III
1,533 Views
This thread has become so long I'm not sure I know the differences between the problems referred to by various posters. When I started with VS Express, I had to find the separate Microsoft instruction page which tells you where to download 32-bit and amd64 SDKs separately, to enable both 32- and 64-bit operation with CL. Of course, you first select C++ support when installing VS. All these are needed before the corresponding Intel compilers could install correctly. I still had to finish up the paths in ifort.cfg myself.
0 Kudos
Intel_C_Intel
Employee
1,533 Views

Hi,

Thanks for the tip. I'm not sure what to say about the installation of C++ 2005 Express Edition and the Windows Server 2003 Platform SDK SP1 though. As far as I know those install and work fine. Their command prompts for 32-bit and 64-bit both are present and open without any errors showing up. The C++ Command Prompt window also opens without any errors showing up. Only the IVF Command Prompt window for 32-bit operation has the issue. Again, I'm using Windows x64. I didn't have this problem on standard windows. I'll try to read up more on how to intall C++ and the SDK just to make sure I'm doing it right. I have installed them both so many times I've lost count. I've been trying to get IVF running on this machine, since I got it, to no avail. Only the EMT64 works. Never the 32-bit. I've tried three different version of IVF. The 025, 028, and 029 release.

0 Kudos
Intel_C_Intel
Employee
1,533 Views

Hi,

Sure, here is the bat file:

@echo off
Rem Intel Visual Fortran Compiler Build Environment for 32-bit applications

echo.
echo Intel Visual Fortran Compiler 9.1.029 Build Environment for 32-bit applications
echo Copyright (C) 1985-2006 Intel Corporation. All rights reserved.
echo.

@call "C:Program Files (x86)Microsoft Visual Studio 8VCBinVcvars32.bat"
@call "C:Program FilesMicrosoft Platform SDKSetEnv"
title Intel Visual Fortran Compiler 9.1.029 Build Environment for 32-bit applications

echo.

SET IFORT_COMPILER91=C:Program Files (x86)IntelCompilerFortran9.1

SET INTEL_SHARED=C:Program Files (x86)Common FilesIntelShared Files

SET INTEL_LICENSE_FILE=C:Program Files (x86)Common FilesIntelLicenses

SET PATH=%IFORT_COMPILER91%Ia32Bin;%INTEL_SHARED%Ia32Bin;%PATH%

SET LIB=%IFORT_COMPILER91%Ia32Lib;%LIB%

SET INCLUDE=%IFORT_COMPILER91%Ia32Include;%INCLUDE%

if exist "C:Program Files (x86)IntelCompilerFortran9.1ia32Binimsl.bat" call "C:Program Files (x86)IntelCompilerFortran9.1ia32Binimsl.bat"

Here is the cfg file:

# This Configuration file may be used for additional switches

# Enable Microsoft Visual C++* .NET 8.0 compatibility
-Qvc8

# Path to Microsoft Visual C++* .NET 8.0 linker
-Qlocation,link,"C:Program Files (x86)Microsoft Visual Studio 8VCBin"

# *Other names and brands may be claimed as the property of others

During previous installation attempts I had to manually change a lot of the items in both files, to get it to find everything. But that is were I got all the same error messages that were stated in this thread. However, that was when I chose only to install the C++ Express Edition Command Prompt only. If you also install and register the GUI, IVF can then find everything ok. But then you get the error show in the image you had me post in a previous e-mail.

0 Kudos
Steven_L_Intel1
Employee
1,533 Views
Edit the ifortvars.bat file and change the first line to read:

@echo on

Save it. Now try opening a build window again and post the output.

Verify that the files named in the following two lines exist:

@call "C:Program Files (x86)Microsoft Visual Studio 8VCBinVcvars32.bat"
@call "C:Program FilesMicrosoft Platform SDKSetEnv"
0 Kudos
Intel_C_Intel
Employee
1,533 Views

Hi,

I turned echo on and attached the results as you asked. Also, I verified that the files are their. Vcvars32.bat was there but not capatilized. I changed that after I took the screenshot, but it made no difference. Same error as before.

0 Kudos
Steven_L_Intel1
Employee
1,533 Views
Ok, the problem is inside the MS file. Open a command prompt window and type:

@echo on
"C:Program Files (x86)Microsoft Visual Studio 8VCBinVcvars32.bat"

post the output.
0 Kudos
Intel_C_Intel
Employee
1,533 Views

Hi Steve,

I turned echo on in the file, but it didn't add any information to the screen. I attached the picture anyway. I manually added a line so that I knew when the file was being called. The thing is, when you open the C++ command prompt window it opens without any errors. Only the IVF window has the problem. So it doesn't make sense that it is any of the C++ or SDK batch files. In any event I copied the bat file for C++ below:

@echo on
@echo start of vsvars32.bat

@SET VSINSTALLDIR=C:Program Files (x86)Microsoft Visual Studio 8
@SET VCINSTALLDIR=C:Program Files (x86)Microsoft Visual Studio 8VC
@SET FrameworkDir=C:WINDOWSMicrosoft.NETFramework
@SET FrameworkVersion=v2.0.50727
@SET FrameworkSDKDir=C:Program Files (x86)Microsoft Visual Studio 8SDKv2.0
@if "%VSINSTALLDIR%"=="" goto error_no_VSINSTALLDIR
@if "%VCINSTALLDIR%"=="" goto error_no_VCINSTALLDIR

@echo Setting environment for using Microsoft Visual Studio 2005 x86 tools.

@rem
@rem Root of Visual Studio IDE installed files.
@rem
@set DevEnvDir=C:Program Files (x86)Microsoft Visual Studio 8Common7IDE

@set PATH=C:Program Files (x86)Microsoft Visual Studio 8Common7IDE;C:Program Files (x86)Microsoft Visual Studio 8VCBIN;C:Program Files (x86)Microsoft Visual Studio 8Common7Tools;C:Program Files (x86)Microsoft Visual Studio 8SDKv2.0in;C:WINDOWSMicrosoft.NETFrameworkv2.0.50727;C:Program Files (x86)Microsoft Visual Studio 8VCVCPackages;%PATH%
@set INCLUDE=C:Program Files (x86)Microsoft Visual Studio 8VCINCLUDE;%INCLUDE%
@set LIB=C:Program Files (x86)Microsoft Visual Studio 8VCLIB;C:Program Files (x86)Microsoft Visual Studio 8SDKv2.0lib;%LIB%
@set LIBPATH=C:WINDOWSMicrosoft.NETFrameworkv2.0.50727

@goto end

:error_no_VSINSTALLDIR
@echo ERROR: VSINSTALLDIR variable is not set.
@goto end

:error_no_VCINSTALLDIR
@echo ERROR: VCINSTALLDIR variable is not set.
@goto end

:end

0 Kudos
Intel_C_Intel
Employee
1,533 Views

Hi Again,

Here is more information that I discovered. I was checking all the paths and they seemed ok. So then I turned echo on in the next file that IVF was calling. That was the bat file for the Platform SDK. Then what you were probably looking for showed up. I attached a picture. I don't know what it means though. Also, the thing I don't understand is all of the command prompt windows for the SDK and the one for C++ all open without a problem. So I don't know why the Platform SDK batch file is having an issue when called from the IVF command prompt window.

0 Kudos
Intel_C_Intel
Employee
1,533 Views

Hi Steve,

I think I fixed it. I changed the vsvars32.bat file as follows:

@SET VSINSTALLDIR=C:Program Files (x86)Microsoft Visual Studio 8
@SET VCINSTALLDIR=C:Program Files (x86)Microsoft Visual Studio 8VC
@SET FrameworkDir=C:WINDOWSMicrosoft.NETFramework
@SET FrameworkVersion=v2.0.50727
@SET FrameworkSDKDir=C:Program Files (x86)Microsoft Visual Studio 8SDKv2.0
@if "%VSINSTALLDIR%"=="" goto error_no_VSINSTALLDIR
@if "%VCINSTALLDIR%"=="" goto error_no_VCINSTALLDIR

@echo Setting environment for using Microsoft Visual Studio 2005 x86 tools.

@rem
@rem Root of Visual Studio IDE installed files.
@rem
@set DevEnvDir=C:Program Files (x86)Microsoft Visual Studio 8Common7IDE

@set PATH=C:Program Files (x86)Microsoft Visual Studio 8Common7IDE;C:Program Files (x86)Microsoft

Visual Studio 8VCin;C:Program Files (x86)Microsoft Visual Studio 8Common7Tools;C:Program Files

(x86)Microsoft Visual Studio 8SDKv2.0Bin;C:WINDOWSMicrosoft.NETFrameworkv2.0.50727;C:Program Files

(x86)Microsoft Visual Studio 8VCvcpackages;%PATH%
@set INCLUDE=C:Program Files (x86)Microsoft Visual Studio 8VCinclude;%INCLUDE%
@set LIB=C:Program Files (x86)Microsoft Visual Studio 8VClib;C:Program Files (x86)Microsoft Visual

Studio 8SDKv2.0Lib;%LIB%
@set LIBPATH=C:WINDOWSMicrosoft.NETFrameworkv2.0.50727

@set MsVcDir=DevEnvDir

@goto end

:error_no_VSINSTALLDIR
@echo ERROR: VSINSTALLDIR variable is not set.
@goto end

:error_no_VCINSTALLDIR
@echo ERROR: VCINSTALLDIR variable is not set.
@goto end

:end

Moreover, I added the following line to the existing file:

@set MsVcDir=DevEnvDir

It seems to work now. I'm going to see if someone using a 32bit can run the executable, if so, its finally fixed.

Thanks for your help,

Anthony

0 Kudos
Steven_L_Intel1
Employee
1,533 Views
Ok, but I am going to look at this in more detail - it should have worked.
0 Kudos
Intel_C_Intel
Employee
1,533 Views

Hi,

I did fix the problem. A few co-workers checked to make sure the executable ran on their 32-bit computers. So you can download the free Microsoft C++ Express Edition andthe Windows Platform SDK and use IVF to target 32-bit computers, when running from Windows x64 edition. You just have to modify one of the batch files.

Anthony

0 Kudos
Reply