Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.

IFC and stdlibc++

holysword
Novice
1,207 Views
Hi there
I'm trying to install the Intel Fortran Compiler 11.0.074 in my system, but I'm getting this:

The following required for installation commands are missing:
libstdc++.so.5 (library)

One or more of these libraries
could not be found:
libstdc++
libstdc++5
glibc
libgcc

Well, I'm sure that these libs are installed and in the default path. The only thing that I noticed is that libstdc++ is installed at /usr/lib64/libstdc++-v3, but I already symlinked it to /usr/lib64 and the installation program still don't recognize it.

I don't know if its an gcc issue, I tried with gcc-4.2 and gcc-3.6... I have the very same problem with ICC 11*.

Any clue?
0 Kudos
8 Replies
rreis
New Contributor I
1,207 Views
Quoting - holysword
Hi there
I'm trying to install the Intel Fortran Compiler 11.0.074 in my system, but I'm getting this:

The following required for installation commands are missing:
libstdc++.so.5 (library)

One or more of these libraries
could not be found:
libstdc++
libstdc++5
glibc
libgcc

Well, I'm sure that these libs are installed and in the default path. The only thing that I noticed is that libstdc++ is installed at /usr/lib64/libstdc++-v3, but I already symlinked it to /usr/lib64 and the installation program still don't recognize it.

I don't know if its an gcc issue, I tried with gcc-4.2 and gcc-3.6... I have the very same problem with ICC 11*.

Any clue?

Assuming linux, which distro are you using? In my machine (installed and working) I got these locations:

/emul/ia32-linux/usr/lib/libstdc++.so.5
/emul/ia32-linux/usr/lib/libstdc++.so.5.0.7
/usr/lib/libstdc++.so.5
/usr/lib/libstdc++.so.5.0.7

the emul are the 32 bit versions.
0 Kudos
TimP
Honored Contributor III
1,207 Views
64-bit distros with non-standard layout are more difficult than 32-bit distros. To check that you have the g++ installed correctly, if you are doing a normal root install, run (as root)
g++ -print-search-dirs
g++ -m32 -print-search-dirs
The library paths should show where both the 32- and 64-bit libstdc++ are located.
You should have no difficulty finding both the 32- and 64-bit libstdc++, if you have installed both 32- and 64-bit g++ development system, on a distro which handles the 32- and 64-bit installations LSB fashion (32-bit libraries in /usr/lib, 64-bit in /usr/lib64/). Work has been done to accommodate also the debian/Ubuntu scheme, where /usr/lib contains 64-bit libraries, and the 32-bit libraries are in /usr/lib32, but the install script has to detect that setup "magically."
Typical Red Hat installation menu requires you to select the g++ development system, the "legacy" (32-bit) g++, and the "compatibility" (older 32-bit) libraries. If you are running a broken Red Hat or CentOS version such as 5.0, where one of those options is missing, you must install the 32-bit libstdc++, including libcompat, individually, as by searching the .rpm directory on the install DVD and running rpm.
0 Kudos
holysword
Novice
1,207 Views
Quoting - tim18
64-bit distros with non-standard layout are more difficult than 32-bit distros. To check that you have the g++ installed correctly, if you are doing a normal root install, run (as root)
g++ -print-search-dirs
g++ -m32 -print-search-dirs
The library paths should show where both the 32- and 64-bit libstdc++ are located.
You should have no difficulty finding both the 32- and 64-bit libstdc++, if you have installed both 32- and 64-bit g++ development system, on a distro which handles the 32- and 64-bit installations LSB fashion (32-bit libraries in /usr/lib, 64-bit in /usr/lib64/). Work has been done to accommodate also the debian/Ubuntu scheme, where /usr/lib contains 64-bit libraries, and the 32-bit libraries are in /usr/lib32, but the install script has to detect that setup "magically."
Typical Red Hat installation menu requires you to select the g++ development system, the "legacy" (32-bit) g++, and the "compatibility" (older 32-bit) libraries. If you are running a broken Red Hat or CentOS version such as 5.0, where one of those options is missing, you must install the 32-bit libstdc++, including libcompat, individually, as by searching the .rpm directory on the install DVD and running rpm.


Sorry, I forgot to say that I'm using Gentoo Linux. Yes, Gentoo has /usr/lib32 and /usr/lib64, and /usr/lib is a symlink to /usr/lib64. The command that you gave me (with -m32) returned:

libraries: =/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../x86_64-pc-linux-gnu/lib/x86_64-pc-linux-gnu/4.1.2/32/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../x86_64-pc-linux-gnu/lib/../lib32/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../x86_64-pc-linux-gnu/4.1.2/32/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../lib32/:/lib/x86_64-pc-linux-gnu/4.1.2/32/:/lib/../lib32/:/usr/lib/x86_64-pc-linux-gnu/4.1.2/32/:/usr/lib/../lib32/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../x86_64-pc-linux-gnu/lib/x86_64-pc-linux-gnu/4.1.2/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../x86_64-pc-linux-gnu/lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../x86_64-pc-linux-gnu/4.1.2/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../:/lib/x86_64-pc-linux-gnu/4.1.2/:/lib/:/usr/lib/x86_64-pc-linux-gnu/4.1.2/:/usr/lib/

As I told you before, the lib /usr/lib/libstdc++-v3/libstdc++.so.5 (and in lib32 too, same name), and I already symlinked them to /usr/lib, without success (and as you can see, /usr/lib is into the path).

But I noticed that into the directory /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2 there is only libstdc++.so.6. Maybe the installation program is looking for a libstdc++.so.5 in this directory?
0 Kudos
holysword
Novice
1,207 Views
Quoting - rreis

Assuming linux, which distro are you using? In my machine (installed and working) I got these locations:

/emul/ia32-linux/usr/lib/libstdc++.so.5
/emul/ia32-linux/usr/lib/libstdc++.so.5.0.7
/usr/lib/libstdc++.so.5
/usr/lib/libstdc++.so.5.0.7

the emul are the 32 bit versions.

As I told, its already symlinked to /usr/lib and still don't work. About the emul directory, I created it and symlinked my libs to it, and got the same result.

Just to emphasize, seems that its not finding even the 64 lib:

Missing critical pre-requisite
-- missing system commands
-- 32-bit libraries not found


And then it prints the errors that I showed in the first post.
0 Kudos
TimP
Honored Contributor III
1,207 Views
I suspect that that the symlink from /usr/lib64 to /usr/lib, which is unlike any other known distro, is a big part of the problem. If you looked at the previous posts, you should see that gentoo x86_64 was brought up recently.
I can't imagine why gentoo feels it is important to introduce a (3rd?) variant in the organization of x86_64 libraries, when there was an agreement which included distros as far apart as Red Hat, SUSE, and those who follow them, and the 2nd opinion presented by debian/Ubuntu has also gained a significant following. But, fortunately for me, no one cares what I think about this effort to make incompatible linux families.
0 Kudos
holysword
Novice
1,207 Views
Quoting - tim18
I suspect that that the symlink from /usr/lib64 to /usr/lib, which is unlike any other known distro, is a big part of the problem. If you looked at the previous posts, you should see that gentoo x86_64 was brought up recently.
I can't imagine why gentoo feels it is important to introduce a (3rd?) variant in the organization of x86_64 libraries, when there was an agreement which included distros as far apart as Red Hat, SUSE, and those who follow them, and the 2nd opinion presented by debian/Ubuntu has also gained a significant following. But, fortunately for me, no one cares what I think about this effort to make incompatible linux families.

Well, I honestly don't know, I've been using gentoo for years and I never used any other distro.
I can't understand the problem with symlink also, once I have never faced problems with it (it wasn't supposed to get the symlink exactly as the original file?).

Anyway, can you give me the output of your "g++ -m32 --print-search-dir" ?
0 Kudos
TimP
Honored Contributor III
1,207 Views
Quoting - holysword

Well, I honestly don't know, I've been using gentoo for years and I never used any other distro.
I can't understand the problem with symlink also, once I have never faced problems with it (it wasn't supposed to get the symlink exactly as the original file?).

Anyway, can you give me the output of your "g++ -m32 --print-search-dir" ?
My point is that you have 64-bit libraries where most distros have 32-bit libraries. This may require applications to be built differently for gentoo than for other distros.

g++ -m32 -print-search-dirs
install: /usr/lib64/gcc/x86_64-suse-linux/4.2.1/
programs: =/usr/lib64/gcc/x86_64-suse-linux/4.2.1/:/usr/lib64/gcc/x86_64-suse-linux/4.2.1/:/usr/lib64/gcc/x86_64-suse-linux/:/usr/lib64/gcc/x86_64-suse-linux/4.2.1/:/usr/lib64/gcc/x86_64-suse-linux/:/usr/libexec/gcc/x86_64-suse-linux/4.2.1/:/usr/libexec/gcc/x86_64-suse-linux/:/usr/lib/gcc/x86_64-suse-linux/4.2.1/:/usr/lib/gcc/x86_64-suse-linux/:/usr/lib64/gcc/x86_64-suse-linux/4.2.1/../../../../x86_64-suse-linux/bin/x86_64-suse-linux/4.2.1/:/usr/lib64/gcc/x86_64-suse-linux/4.2.1/../../../../x86_64-suse-linux/bin/
libraries: =/usr/lib64/gcc/x86_64-suse-linux/4.2.1/32/:/usr/lib/gcc/x86_64-suse-linux/4.2.1/32/:/usr/lib64/gcc/x86_64-suse-linux/4.2.1/../../../../x86_64-suse-linux/lib/x86_64-suse-linux/4.2.1/32/:/usr/lib64/gcc/x86_64-suse-linux/4.2.1/../../../../x86_64-suse-linux/lib/../lib/:/usr/lib64/gcc/x86_64-suse-linux/4.2.1/../../../x86_64-suse-linux/4.2.1/32/:/usr/lib64/gcc/x86_64-suse-linux/4.2.1/../../../../lib/:/lib/x86_64-suse-linux/4.2.1/32/:/lib/../lib/:/usr/lib/x86_64-suse-linux/4.2.1/32/:/usr/lib/../lib/:/usr/lib64/gcc/x86_64-suse-linux/4.2.1/:/usr/lib/gcc/x86_64-suse-linux/4.2.1/:/usr/lib64/gcc/x86_64-suse-linux/4.2.1/../../../../x86_64-suse-linux/lib/x86_64-suse-linux/4.2.1/:/usr/lib64/gcc/x86_64-suse-linux/4.2.1/../../../../x86_64-suse-linux/lib/:/usr/lib64/gcc/x86_64-suse-linux/4.2.1/../../../x86_64-suse-linux/4.2.1/:/usr/lib64/gcc/x86_64-suse-linux/4.2.1/../../../:/lib/x86_64-suse-linux/4.2.1/:/lib/:/usr/lib/x86_64-suse-linux/4.2.1/:/usr/lib/
0 Kudos
holysword
Novice
1,207 Views
I finnally found a solution here. It worked for ifc and icc as well.

It just drop down the dependencies check (and other checks) and then it install. I tested some few stuffs with ifc, and it worked fine here.

Thanks you all.
0 Kudos
Reply