(ifort.exe) cannot be found

(ifort.exe) cannot be found

Hi

I have installed VS 2005 plus C++ plus IVF latest Version

When trying to build a project I get the following error

The Fortran compiler (ifort.exe) cannot be found.

What can I do ?

Klaus

16 帖子 / 0 全新
最新文章
如需更全面地了解编译器优化,请参阅优化注意事项

When you installed IVF, did you leave all of the checkboxes for the various IVF "tools" selected? At a minimum, you need the IA-32 compiler and the Visual Studio integration.

In VS, go to Tools, Options, Intel Fortran, General. Is the compiler version 9.1 selected? Is the platform correct for you? (Win32 vs. x64)

The first thing I would suggest is to uninstall all of the Intel Fortran entries shown in Add/Remove Programs and then reinstal, keeping all the defaults. Let us know how it goes.

Steve - Intel Developer Support

Hi

I removed IVF, cleaned the registry and installed again.

Now it works.

Thanks

Klaus

I have installed evaluation versions of Visual Studio 2008 and evaluation version of Visual Fortranand can not get fortran code to build from within visual studio. Here's what I did...

1) I installed the evaluation version of Microsoft Visual Studio 2008on my 64 bit machine running vista.

2) I installed the evaluation version of the Intel Visual Fortran compiler Professional Edition (v10.1.025) for windows.

3) I created a project and attempted to built it.I get the following error:

The fortran compiler (ifort.exe) cannot be found.

It should be noted that when I go to Tools, Options, Intel Fortran, Compilers, it says "No Compiler Installed". The only target listed is win32.

QUESTION: What is the problem with this and how do I get fortran toproperly integrate and compile from within visual studio?Also, shouldn'tI see 64 bit as an option too under the Tools menu described above?

BTW, I've uninstalled and reinstalled Visual fortran and it did not help.

VS2008 Express supports only command line, 32-bit only. ifort won't attempt integration. I think VS2005 Express had a 64-bit option, still only for command line with Intel compilers. You need a higher version than Express for recognition during ifort installation.

VS2008 pre-release version doesn't work well with ifort either. You need a released version. Also, if you installed the beta version of VS2008 SP1, you have to remove VS2008 entirely, and start over, in order to install VS2008 and released SP1.

During VS2008 installation, there are a number of downloads from Microsoft which may fail. Microsoft KB blames this on virus checking and firewalls. I've had to give up on it myself, and fall back to VS2005.

Both VS2005 and VS2008 have a check box inside the C++ option category which must be checked on, to support x64 (64-bit) compilation. It may be necessary to go back and add this feature, after installing VS and adding all the patches. In my most recent case, having installed VS2005, ifort, and icl, simply going back and re-adding the VS X64 feature was sufficient to bring the Intel64 compilers to life.

I assume that you installed the 90-day trial of VS Professional. By default, VS Professional does NOT install x64 support. You need to do a "change" of VS08 in Add/Remove Programs and add the Visual C++ > x64 Compiler and Tools component.

Once you do that, you will want to create an x64 target configuration by selecting Build > Configuration Manager and then creating a new x64 configuration.

Make sure that the Fortran you installed is the download with a name ending in _novsppe.exe. If you know you won't be doing 32-bit builds you can choose _intel64.exe.

A side note to Tim's reply - the "Express" editions of VS are 32-bit only. Tim is correct that these do not provide IDE support for Intel Fortran, but that does not seem to be relevant to your situation.

Steve - Intel Developer Support

OK thanks very much for the help. It seems to be working now.

Yes, this was 90-day trial of VS professional. Based your your install recommendation, I clicked on x64 Compiler and Tools Component to install that capability.

I then installed the _novsppe.exe version of the fortran compiler. (After uninstalling the _intel64.exe version I had previously installed).

After creating a project, I then did Build > Configuration Manager and created a new x64 PLATFORM (not configuration). Now it seems that I can create Debug or Release "configurations" on either the win32 or x64 "platforms".

Now comes the debugging!

Quoting - Steve Lionel (Intel)

When you installed IVF, did you leave all of the checkboxes for the various IVF "tools" selected? At a minimum, you need the IA-32 compiler and the Visual Studio integration.

In VS, go to Tools, Options, Intel Fortran, General. Is the compiler version 9.1 selected? Is the platform correct for you? (Win32 vs. x64)

The first thing I would suggest is to uninstall all of the Intel Fortran entries shown in Add/Remove Programs and then reinstal, keeping all the defaults. Let us know how it goes.

Quoting - Steve Lionel (Intel)

When you installed IVF, did you leave all of the checkboxes for the various IVF "tools" selected? At a minimum, you need the IA-32 compiler and the Visual Studio integration.

In VS, go to Tools, Options, Intel Fortran, General. Is the compiler version 9.1 selected? Is the platform correct for you? (Win32 vs. x64)

The first thing I would suggest is to uninstall all of the Intel Fortran entries shown in Add/Remove Programs and then reinstal, keeping all the defaults. Let us know how it goes.

Mr. Lionel,

I have MS Visual Studio 2005 installed and I have installed IVF 10.1.025 (executing w_fc_p_10.1.025_ia32.exe). After installation, I start VS and right clikc on one of the .F file in my project, the " compile" in drop down menu is dimmed. I cannot compile the Fortran file. Do I need to do some setup before I can compile the Fortran code inside VS?

Thanks in advance, Hong Ye

Normally, you do not compile individual files. Instead, you build the solution. If you have the bundled Visual Studio 2005 Premier Partner Edition, the right-click-Compile option is not available with version 10.x. It will work in version 11.

To build the solution, select Build > Build Solution or press the F7 key.

Steve - Intel Developer Support

Quoting - Steve Lionel (Intel)

Normally, you do not compile individual files. Instead, you build the solution. If you have the bundled Visual Studio 2005 Premier Partner Edition, the right-click-Compile option is not available with version 10.x. It will work in version 11.

To build the solution, select Build > Build Solution or press the F7 key.

I created a Fortran project under my solusion and Fortran files are compiled and a .lib file is created. But I get "error LNK2019: unresolved external symbol" when I tried to build the whole solusion. Help.

Thanks in advance, Hong Ye

I assume the whole solution includes an executable project. Which language is that project? Did you add the Fortran library project as a "Dependency" of the executable project? What symbol is unresolved and where should it be defined?

Steve - Intel Developer Support


Quoting - Steve Lionel (Intel)

I assume the whole solution includes an executable project. Which language is that project? Did you add the Fortran library project as a "Dependency" of the executable project? What symbol is unresolved and where should it be defined?

The whole solusion is a dll. It si C++/ATL project. I added the Tortran library as a dependency. The unsole the symbols are defined in Fortran code and calling from a C function. In the C file, I have declared a extern as following

extern void __stdcall ZAIT_1D_ANISBEDS_SIZES (int_t *);

and the function call as

ZAIT_1D_ANISBEDS_SIZES( (int_t *)&C_max_sizes[0] );

In the Fortran file the function defined as

subroutine zait_1d_anisbeds_sizes( j_sizes )

Thanks for the help. Hong Ye


Quoting - Steve Lionel (Intel)

I assume the whole solution includes an executable project. Which language is that project? Did you add the Fortran library project as a "Dependency" of the executable project? What symbol is unresolved and where should it be defined?

Mr Lionel,

The unresolved Fortran function name problem is solved by setting the external procedure/Calling COnvention. Now I have new problem:

1>Linking...
1>LINK : warning LNK4075: ignoring '/INCREMENTAL' due to '/OPT:ICF' specification
1>LIBCMT.lib(crt0dat.obj) : error LNK2005: __amsg_exit already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(crt0dat.obj) : error LNK2005: __initterm_e already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(sprintf.obj) : error LNK2005: _sprintf_s already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(_file.obj) : error LNK2005: ___iob_func already defined in MSVCRT.lib(MSVCR80.dll)

I ckeched on line support forum and I was told it is the conflict between Multi-thread and Single-thread libraries. I tried to set "Ignore MSVCRT.lib" in Project setting and I got a lot of undefined symbols from system function. I'm wondering if I can build the Fortran code to Multi-thread lib. Could you give me some suggestion?

Thanks in advance, Hong Ye

Remove the "ignore MSVCRT.LIB" option. Use Fortran > Libraries to set the library type. make sure it matches that of the C++ project. The default for Fortran is Multithread static library, but nowadays C++ defaults to multithread DLL. These need to be consistent.

Steve - Intel Developer Support


Quoting - Steve Lionel (Intel)

Remove the "ignore MSVCRT.LIB" option. Use Fortran > Libraries to set the library type. make sure it matches that of the C++ project. The default for Fortran is Multithread static library, but nowadays C++ defaults to multithread DLL. These need to be consistent.

Thanks, The problem is solved. You are a life saver.

发表评论

登录添加评论。还不是成员?立即加入