- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I just installed Intel 9 Fortran on our server and we have a variety of boxes running different flavors of linux (Suse 9.1, Suse 9.3, etc). In the 8.1 Fortran there is a section in the ifort file that contains data like :
IA32ROOT=/fltapps/boeing/intel/compiler81_64/intel_fce_81; export IA32ROOT;
EFI2_INCLUDE1="/usr/lib64/gcc-lib/x86_64-suse-linux/3.3.3/include"; export EFI2_INCLUDE1;
EFI2_GCC_LIB="/usr/lib64"; export EFI2_GCC_LIB;
EFI2_DYNAMIC_LINKER="/lib64/ld-linux-x86-64.so.2"; export EFI2_DYNAMIC_LINKER;
EFI2_INCLUDE="/usr/local/include"; export EFI2_INCLUDE
EFI2_LINUX_DIR_NAME="/usr/lib64/gcc-lib/x86_64-suse-linux"; export EFI2_LINUX_DIR_NAME;
my ifort file in the 9 installation is empty. How do I go about customizing the compiler to work under different versions of gcc??
Thanx,
Bernie
IA32ROOT=/fltapps/boeing/intel/compiler81_64/intel_fce_81; export IA32ROOT;
EFI2_INCLUDE1="/usr/lib64/gcc-lib/x86_64-suse-linux/3.3.3/include"; export EFI2_INCLUDE1;
EFI2_GCC_LIB="/usr/lib64"; export EFI2_GCC_LIB;
EFI2_DYNAMIC_LINKER="/lib64/ld-linux-x86-64.so.2"; export EFI2_DYNAMIC_LINKER;
EFI2_INCLUDE="/usr/local/include"; export EFI2_INCLUDE
EFI2_LINUX_DIR_NAME="/usr/lib64/gcc-lib/x86_64-suse-linux"; export EFI2_LINUX_DIR_NAME;
my ifort file in the 9 installation is empty. How do I go about customizing the compiler to work under different versions of gcc??
Thanx,
Bernie
Link Copied
2 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You don't literally mean "empty" do you? If it were completely empty, you wouldn't be able to invoke the compiler at all. :smileyhappy:
I assume you mean you don't have the lines pertaining to *GCC_* in your version of the ifort script.
First -with 9.0, ifort doesn't link against theC++ libraries. There is no longer a dependency on C++ support within the Fortran Runtime Libraries. That, obviously, lessens the dependence in particular versions of C++.
If you have programs that are a combination of C++ and Fortran, and you are using "ifort' to link the program, you can use the -cxxlib switch to indicate you want to link against the C++ libraries.
Now, this is where it gets interesting.
The driver, which is a utility invoked from the ifort script, queries the gcc installed on your system to find its libraries. The driver invokes the compiler to create the object file(s), then invokes the loader to create the executable. Whenthe driverinvokes the loader, it passes the location of the gcc libraries so the loader can find them.
Does this answer your question?
- Lorri
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I concur with the observation that the .cfg files, which 8.1 compilers filled out during installation, are left empty by 9.0 installation. Only a small amount of environment variable setting is left to the ifortvars and ifort scripts. Thus, the question, does 9.0 find glibc library paths at invocation time, by querying the gcc which is active at that time? I have found that ifort 9.0 refuses to run if it sees a gcc newer than 4.0 on the PATH.
I just repeated a simple test on EM64T and ia64 which requires ifort 9.0.025 to link against libstdc++. It found the libraries without the extra coaxing required by earlier 9.0 versions.
I just repeated a simple test on EM64T and ia64 which requires ifort 9.0.025 to link against libstdc++. It found the libraries without the extra coaxing required by earlier 9.0 versions.
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page