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

Fortran redistributables

andrew_4619
Honored Contributor II
762 Views

Does intel have a tool that checks if a Fortran redistributable package is installed on a system? It would be useful to do that within my installer. 

0 Kudos
1 Solution
Steve_Lionel
Honored Contributor III
735 Views

I wrote a Windows version for you. See attached. Build and run it (you will want to use static library linking). Optionally it can take a command line argument of the minimum file version you want (20, etc.)

View solution in original post

5 Replies
Devorah_H_Intel
Moderator
752 Views

set PATH command on Windows should show compiler redist directories.  No separate tool that checks for Runtimes (former redist) that I am aware of. 

andrew_4619
Honored Contributor II
738 Views

Thanks Devorah , that clears up that avenue of endeavour!

C:\Program Files (x86)\Common Files\Intel\Shared Libraries\intel64\libfabric\bin\;
C:\Program Files (x86)\Common Files\Intel\Shared Libraries\intel64\libfabric\bin\utils;
C:\Program Files (x86)\Common Files\Intel\Shared Libraries\intel64\bin;
C:\Program Files (x86)\Common Files\Intel\Shared Libraries\ia32;
C:\Program Files (x86)\Common Files\Intel\Shared Libraries\intel64;
C:\Program Files (x86)\Common Files\Intel\Shared Libraries\;
C:\Program Files (x86)\Intel\oneAPI\mpi\latest\bin\;
C:\Program Files (x86)\Intel\oneAPI\mpi\latest\bin\release\;
C:\Program Files (x86)\Intel\oneAPI\mpi\latest\libfabric\bin\;
C:\Program Files (x86)\Intel\oneAPI\mpi\latest\libfabric\bin\utils\;
C:\Program Files (x86)\Intel\oneAPI\tbb\latest\redist\intel64\vc_mt\;
C:\Program Files (x86)\Intel\oneAPI\tbb\latest\redist\ia32\vc_mt\;
C:\Program Files (x86)\Intel\oneAPI\compiler\latest\windows\redist\intel64_win\compiler;
C:\Program Files (x86)\Intel\oneAPI\compiler\latest\windows\redist\ia32_win\compiler;
C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64_win\mpirt;
C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\ia32_win\mpirt;
C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64_win\compiler;
C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\ia32_win\compiler;

Soooo many entries in my path and such long names, 60%+ of the path size is Intel!  Anyway having looked at this I think I will look at some of the other ways to solve  my problem. 

0 Kudos
Steve_Lionel
Honored Contributor III
736 Views

I wrote a Windows version for you. See attached. Build and run it (you will want to use static library linking). Optionally it can take a command line argument of the minimum file version you want (20, etc.)

andrew_4619
Honored Contributor II
719 Views

Neat Thanks. I built and ran that OK under debug.

The really useful trick is "The name of the file. If a full path is not specified, the function uses the search sequence specified by the LoadLibrary function." which is exactly what is needed!

 

 

0 Kudos
Steve_Lionel
Honored Contributor III
713 Views

It occurs to me that I could replace the calls to ExitProcess with ERROR STOP 1,QUIET=.TRUE. (change 1 to the appropriate value). The last ExitProcess with 0 status is strictly not necessary, since that should be the standard exit status.

And, yes, that behavior of GetFileVersionInfo is quite handy here!

0 Kudos
Reply