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

Installation issues with Parallel Studio XE 2017

srinivasan__srihari
1,469 Views

Hi All, I couldn't find a proper forum to post issues during installation, so I am posting it here. I am trying to install Intel Parallel Studio XE 2017 on OpenSUSE LEAP 42.1. The installation script gives a list of "Missing Optional Prerequisite" warning after checking the prerequisites, as listed below.

Missing optional prerequisites
-- Unsupported OS
-- Intel(R) Trace Analyzer and Collector 2017 for Linux* OS: Unsupported OS
-- Intel(R) Cluster Checker 2017 for Linux* OS: Unsupported OS
-- Intel(R) VTune(TM) Amplifier XE 2017: Unsupported OS
-- Intel(R) Inspector 2017: Unsupported OS
-- Intel(R) Advisor 2017: Unsupported OS
-- Driver build options are incomplete. Drivers cannot be built.

Details of the last in the above list are as follows

Either kernel source directory, C compiler, or Make command is not detected by
the installation. To build the sampling driver, set up parameters in Advanced
Options -> Driver Build Options dialog.
To install kernel headers, execute one of the following commands specific to
your operating system:
- Fedora / Red Hat Enterprise Linux
   - On a system with the default kernel, install the kernel-devel package:
     yum install kernel-devel
   - On a system with the PAE kernel, install the kernel-PAE package:
     yum install kernel-PAE-devel
- OpenSUSE / SUSE Linux Enterprise
     zypper install kernel-source
- Ubuntu / Debian
     apt-get install linux-headers-4.1.34-33-default

To ensure I have installed all 3 things it expects, kernel-source, C & C++ compiler & make, I have taken screenshots from terminal, shown here -  http://tinypic.com/r/2cembrd/9

I suspect only the last in the list above could be of concern since if I continue installation despite warning, it installs successfully but gives errors when compiling.

Initial compile-time error, occurs when compiling the first file of my code -

ifort: error #10001: could not find directory in which g++ resides

This issue is fixed by referring to https://software.intel.com/en-us/articles/intel-fortran-compiler-for-linux-ifort-error-could-not-find-directory-in-which-g-resides

After fixing that issue, the next compile-time error occurs during linking the objects -

ipo: error #11025: Linker command line is badly formed

ifort: error #10014: problem during multi-file optimization compilation (code 1)

I could not resolve these 2 errors above, & I suspect it has to do with the incomplete driver build option warning it gives during installation. Am I right?

I would be grateful for any advice or help!

Thank you!

Hari

0 Kudos
1 Solution
TimP
Honored Contributor III
1,469 Views

Would setting an alias so that your desired g++ appears as g++ (without version appended) or equivalent settings of PATH and LD_LIBRARY_PATH (with symlink if necessary) help with finding g++?  You want it set up so that 'g++ -print-search-dirs' shows the correct g++ installation.
 

View solution in original post

0 Kudos
6 Replies
Steven_L_Intel1
Employee
1,469 Views

You have two different issues. The part about drivers is all related to Intel VTune Amplifier XE - you could ask in that forum if you needed help with that. For the linking issue, we'd need more information, in particular, the exact commands used to do the compile and link.

0 Kudos
srinivasan__srihari
1,469 Views

Thanks for the advice!
About the 2nd part of your advice, below I have attached the makefile I use. It is not written in a very sophisticated way.. Though I have to remark that the problem could not possibly be with my makefile.

This same makefile has been working perfectly earlier, until I had to re-install the OpenSUSE due to hard drive crash. It also works fine on other machines in our network that have the parallel studio installed. Most linux forum pages seem to point at GCC environment variables not being assigned. But that couldn't be true as GCC environment variables aren't assigned on the other machines on which this makefile works.

0 Kudos
Steven_L_Intel1
Employee
1,469 Views

I would want to see the commands produced by this makefile. LFLAGS could be set to empty, as all of those flags are compile-only options, though I'd expect them to be harmless here.

0 Kudos
srinivasan__srihari
1,469 Views

I have attached 2 text files with commands produced by the makefile - *_good.txt produced on a machine where it compiles & runs without errors.. & the other *_bad.txt where compilation failed. 

But I noticed the advanced build options during installation (on the machine where compilation fails) failed to find g++, though the appropriate env var GXX_ROOT was assigned on the system via the file /etc/profile.local. It gives that warning when proceeding with installation.  It also gave an option to set the path to C compiler (it failed to detect that as well!), which was provided. 

Also, it was never required to set the env var GXX_ROOT on the machine where compilation & run works fine. It never gave any 'build option' or 'g++ not found' warnings while installing the Parallel Studio on that machine (which was around 3-4 months ago). I even checked & compared all the system environment variables on the two machines to trace down where the issue is, there isn't any env var on the 'good' machine that isn't present/set correctly on the 'bad' one.. So it is as yet unclear what is causing the issue.

 

0 Kudos
TimP
Honored Contributor III
1,470 Views

Would setting an alias so that your desired g++ appears as g++ (without version appended) or equivalent settings of PATH and LD_LIBRARY_PATH (with symlink if necessary) help with finding g++?  You want it set up so that 'g++ -print-search-dirs' shows the correct g++ installation.
 

0 Kudos
srinivasan__srihari
1,469 Views

Yes, this last trick of setting an alias worked! GCC versions 5.3 & 4.8.5 create aliases as 'gcc-5.3' & 'gcc-4.8' respectively & THAT is the problem. One has to either create aliases as the default 'gcc' for any newer versions of GCC installed or install an older version of GCC like 4.8.0, which creates alias as the default 'gcc'.

The parallel studio installer script is compatible with OpenSUSE 42.1 even though it warns this is an unsupported OS. It also wrongly shows the missing 'g++' discrepancy as a missing *optional* prerequisite, but if continued with installation, compilation fails & might generate a "ipo: error #11025: Linker command line is badly formed" error like it did in my case. Perhaps the g++ related warning in the installer needs to be elevated to a critical prerequisite warning.

It compiles & runs perfectly well now ! Thanks a lot for your advice!

0 Kudos
Reply