Performance Tools for Software Developers - Intel® Compiler installation failure - libstdc++ failed dependencies

Product improvements in the Intel® C++ and Fortran 10.x, and continued with the 11.x compilers for Linux* require linkage to a Standard C++ library on all IA-32, Intel® 64, and IA-64 processor-based Linux* systems. Intel® C++ and Fortran 10.x compilers are linked to the /usr/lib/libstdc++.so.5 library by design to permit use of the compilers on GCC* 3.2-based Linux* distributions.

Many Linux distributions available today are GCC* 3.4-based and thus by default provide the newer Standard C++ library, /usr/lib/libstdc++.so.6. Therefore, installation and use of the Intel® C++ and Fortran 10.x and 11.x compilers for Linux* on GCC* 3.4-based Linux distributions may require explicit user action to install the Standard C++ library compatibility RPM, compat-libstdc++, that provides the required /usr/lib/libstdc++.so.5 library.

Please refer to your Linux distribution's installation materials for details on the compat-libstdc++ RPM and installing specific RPMs.

The Intel C++ and Fortran 10.x and 11.x compilers for Linux installation was enhanced to check for the /usr/lib/libstdc++.so.5 library and issue warning/error diagnostics when the library is not found on the target installation system.

The complete sample diagnostic issued by the compilers is shown at the end of this article. This small excerpt below pertains to the Intel C++ 10.1 compiler for Linux* for IA-32 but is illustrative of a portion of the diagnostic issued by all the Intel C++ and Fortran 10.x and 11.x compilers for Linux* when the /usr/lib/libstdc++.so.5 library is not found.

--------------------------------------------------------------------

error: Failed dependencies:

libstdc++.so.5 needed by intel-icc101x-10.1.x-1.i386
libstdc++.so.5(CXXABI_1.2) needed by intel-icc100x-10.1.x-1.i386
libstdc++.so.5(GLIBCPP_3.2) needed by intel-icc100x-10.1.x-1.i386

--------------------------------------------------------------------

Two options exist to resolve this installation error condition.

  1. Retry the Installation without the /usr/lib/libstdc++.so.5 library installed

    When prompted, the user may instruct the installation to "Retry" in the absence of the required /usr/lib/libstdc++.so.5 library. Failure to install the required compat-libstdc++ RPM immediately following installation of the Intel® compilers will result in an Intel® compiler execution failure shown below. The sample execution failure below pertains to the Intel® Fortran 10.1 compiler but is illustrative of th e error issued by the Intel® C++ 10.1 compiler under the same missing library condition.

    ifort -c example.f90
    /opt/intel/fc/10.1.xxx/bin/fortcom: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory compilation aborted for example.f90 (code 127).

  2. Abort the Installation and install the /usr/lib/libstdc++.so.5 library

    When prompted, the Intel® compiler installation may be halted after the installation detects the required /usr/lib/libstdc++.so.5 library is missing. Once the installation is halted, the required compat-libstdc++ RPM can be installed and then the Intel® compiler installation may be re-started.

Full context of installation error when /usr/lib/libstdc++.so.5 is missing

This sample error/warning below is specific to the Intel® C++ 10.1 compiler for IA-32, however, it is illustrative of the error/warning provided on Intel® 64 and IA-64 processor-based systems by both the Intel® C++ and Fortran 10.x compilers for Linux* under the same conditions of the missing library.

------------------------------------------------------------------

Intel® C++ Compiler for applications running on IA-32, Version
10.1 (10.1.xxx)
Installing...
Installation failed.

------------------------------------------------------------------

RPM std error output is as follows:

------------------------------------------------------------------

error: Failed dependencies:
libstdc++.so.5 needed by intel-icc101x-10.1.x-1.i386
libstdc++.so.5(CXXABI_1.2) needed by intel-icc101x-10.1.x-1.i386
libstdc++.so.5(GLIBCPP_3.2) needed by intel-icc100x-10.1.x-1.i386

-------------------------------------------------------------------

This failure occurred using the following RPM options:

-U --replacefiles --force

-------- WARNING ---------

This is an RPM ERROR CONDITION apparently caused by a dependency problem.

You can choose to retry the RPM installation with dependency enforcement disabled, and retry the RPM installation using the
'--nodeps' option. This dependency problem will still need to be resolved after the installation, in order for the software to function properly.

Do you wish to retry the installation with this option? [yes/no] (no) :

Please consult the product documentation for details regarding
system requirements.

If there are factors unique to your environment, you may also consider specifying special RPM installation parameters using
the CUSTOM install menu.

Be sure to resolve any dependency errors identified during the install process before using the product.

Please refer to /opt/intel/cc/10.1.xxx/doc/Getting_Started.htm to view instructions on how to invoke the product.

Press ENTER to continue ...

Installation is complete:

Thank you for using Intel® Software Development Products, tools
for improving application performance.

=================================================================


 
For more complete information about compiler optimizations, see our Optimization Notice.

1 comment

Top
Sriram Damodharan's picture

For Debian systems we can download the rpm package download.fedora.redhat.com/pub/fedora/linux/releases/12/Everything/i386/os/Packages/compat-libstdc++-33-3.2.3-68.i686.rpm and install it using alien or rpm (to be installed using apt-get).

Add a Comment

Have a technical question? Visit our forums. Have site or software product issues? Contact support.