LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie
User Name
Password
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!

Notices


Reply
  Search this Thread
Old 12-25-2008, 12:51 AM   #1
mail2sud
LQ Newbie
 
Registered: Dec 2008
Posts: 6

Rep: Reputation: 0
problem with intel 11.0 c++ compiler in fedora 8


hi,
I am attempting to install intel 11.0 C++ compiler on fedora 8. But the following error appears:

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


I have downloaded and installed compat-libstdc++-33-3.2.3-62.x86_64.rpm which contains libstdc++.so.5; but still the problem persists.

Can anyone help me in fixing this?
 
Old 12-26-2008, 02:19 PM   #2
colucix
LQ Guru
 
Registered: Sep 2003
Location: Bologna
Distribution: CentOS 6.5 OpenSuSE 12.3
Posts: 10,509

Rep: Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983
You have to install the 32-bit version of compat-libstdc++ even on 64-bit architectures. From the Intel site:
Quote:
The requirement on 32-bit (IA-32) libraries is due to the compiler and various components being 32-bit applications, and dynamically linking to these libraries.
This is related to the following 32-bit libraries on Intel 64 architecture:
Code:
libm.so.6
libpthread.so.0
libc.so.6
libstdc++.so.5
libgcc_s.so.1
 
Old 12-26-2008, 11:49 PM   #3
mail2sud
LQ Newbie
 
Registered: Dec 2008
Posts: 6

Original Poster
Rep: Reputation: 0
Dear colucix,

Thank you very much for your reply..
but I am very new to linux. So I cant exactly understand what to install.. Could you give me a link and file name in that link to be installed in my fedora.. Due to some network settings here, yum dont work here..

Thanks once again..
 
Old 12-27-2008, 01:55 AM   #4
colucix
LQ Guru
 
Registered: Sep 2003
Location: Bologna
Distribution: CentOS 6.5 OpenSuSE 12.3
Posts: 10,509

Rep: Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983
Exactly the same package, compat-libstdc++-33-3.2.3-62, but the 32-bit version. The other libraries listed are just for information, but they should already be installed. If you connect to any Fedora mirror, the path of the file to download is /releases/8/Everything/i386/os/Packages/compat-libstdc++-33-3.2.3-62.i386.rpm
 
Old 12-27-2008, 11:49 PM   #5
mail2sud
LQ Newbie
 
Registered: Dec 2008
Posts: 6

Original Poster
Rep: Reputation: 0
Sir,
Thanks for your reply
I have downloaded and try to install compat-libstdc++-33-3.2.3-62.i386.rpm; but it says this particular package has already been installed. Then, I tried to install the intel compiler; I got the same error message in my first post

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

Plz help me in figure it out what might be wrong..
 
Old 12-28-2008, 02:23 PM   #6
colucix
LQ Guru
 
Registered: Sep 2003
Location: Bologna
Distribution: CentOS 6.5 OpenSuSE 12.3
Posts: 10,509

Rep: Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983
Well, the system complains about the already installed 64-bit version of the same package. At this point you can either un-install the 64-bit version (unless it satisfies other dependencies) or force the installation of the 32-bit version together with the 64-bit. To do this, just add the --force option to the rpm command, e.g.
Code:
rpm --force -Uvh compat-libstdc++-33-3.2.3-62.i386.rpm
Before doing that, please post the output of the following commands (just to be sure we are doing the right thing)
Code:
rpm -q compat-libstdc++-33 --qf "%{name}-%{version}-%{release}.%{arch}\n"
rpm -ql compat-libstdc++-33
rpm -qlp compat-libstdc++-33-3.2.3-62.i386.rpm

Last edited by colucix; 12-29-2008 at 08:52 AM. Reason: Corrected suggested command lines
 
Old 12-29-2008, 08:28 AM   #7
johnsfine
LQ Guru
 
Registered: Dec 2007
Distribution: Centos
Posts: 5,286

Rep: Reputation: 1197Reputation: 1197Reputation: 1197Reputation: 1197Reputation: 1197Reputation: 1197Reputation: 1197Reputation: 1197Reputation: 1197
Quote:
Originally Posted by colucix View Post
Well, the system complains about the already installed 64-bit version of the same package. At this point you can either un-install the 64-bit version
I don't know at all how the packages work for 32-bit support on 64-bit Red Hat, so I can't give the right answer here.

But if you're considering removing the 64-bit version of the same package, you're also not on track to the right answer.

In Debian based distributions (such as Mepis, which I use) the key parts of 32-bit support on 64-bit systems comes in packages specific to that purpose, so a given library will exist in three different packages:
1) 64-bit version packaged for 64-bit systems.
2) 32-bit version packaged for 32-bit systems.
3) 32-bit version packaged for 64-bit systems.

I believe the two different 32-bit versions have the same binary libraries inside them and only look different to the package manager.

I would have thought the Red Hat method of multi-lib support would have less difference (than Debian) between 32-bit for 32-bit systems and 32-bit for 64-bit systems. But I don't know the details and if there were zero difference then mail2sud shouldn't have had the reported problems.

Quote:
Originally Posted by mail2sud View Post
"The following required for installation commands are missing: libstdc++.so.5 (library)"
The two obvious questions from that message are:

Which versions of libstdc++.so are installed where on your system now?

Which packages include exactly the right version (.5) of that file?

On Debian, I could figure out the the right commands that answer each of those questions. On Red Hat, I'm sure someone else here can tell you.

Last edited by johnsfine; 12-29-2008 at 08:33 AM.
 
Old 12-29-2008, 09:02 AM   #8
colucix
LQ Guru
 
Registered: Sep 2003
Location: Bologna
Distribution: CentOS 6.5 OpenSuSE 12.3
Posts: 10,509

Rep: Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983
Quote:
Originally Posted by johnsfine View Post
But if you're considering removing the 64-bit version of the same package, you're also not on track to the right answer.
Since he installed the x86_64 package specifically to solve this issue, I think he does not damage anything by removing it (as last alternative). Anyway, there is something not clear. This is the reason I asked about the output of the suggested commands.

As reference, here is the output on a x86_64 machine running Fedora 8 and Intel Fortran installed:
Code:
$ rpm -q compat-libstdc++-33 --qf "%{name}-%{version}-%{release}.%{arch}\n"
compat-libstdc++-33-3.2.3-62.i386
compat-libstdc++-33-3.2.3-62.x86_64
$
$ rpm -ql compat-libstdc++-33
/usr/lib/libstdc++.so.5
/usr/lib/libstdc++.so.5.0.7
/usr/lib64/libstdc++.so.5
/usr/lib64/libstdc++.so.5.0.7
The second command lists the provided files from both the 32-bit (in /usr/lib where the Intel installer will look for) and the 64-bit version (in /usr/lib64), since they are both installed on this system.

PS - I just checked and Fedora simply installs the 32-bit version provided by the 32-bit version of the OS, along with the 64-bit version, that is - following the scheme proposed by johnsfine:
1) 64-bit version packaged for 64-bit systems
2) 32-bit version packaged for 32-bit systems

Last edited by colucix; 12-29-2008 at 09:16 AM.
 
Old 12-30-2008, 09:56 AM   #9
mail2sud
LQ Newbie
 
Registered: Dec 2008
Posts: 6

Original Poster
Rep: Reputation: 0
Dear colucix and johnsfine,
Thanks you very much for your replies.
However, I could not solve the issue.

Dear Colucix, these are the outputs of the commands you have posted:

[sudhakar@localhost Desktop]$ rpm -q compat-libstdc++-33 --qf "%{name}-%{version}-%{release}.%{arch}\n"
compat-libstdc++-33-3.2.3-62.x86_64
[sudhakar@localhost Desktop]$ rpm -ql compat-libstdc++-33
/usr/lib64/libstdc++.so.5
/usr/lib64/libstdc++.so.5.0.7
[sudhakar@localhost Desktop]$ rpm -qlp compat-libstdc++-33-3.2.3-62.i386.rpm
warning: compat-libstdc++-33-3.2.3-62.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
/usr/lib/libstdc++.so.5
/usr/lib/libstdc++.so.5.0.7


When I force to install the 32 bit libraries, the follwing error appeared:

[sudhakar@localhost Desktop]$ rpm --force -Uvh compat-libstdc++-33-3.2.3-62.i386.rpm
warning: compat-libstdc++-33-3.2.3-62.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
error: can't create transaction lock on /var/lib/rpm/__db.000


Are you still helping me to solve the issue?
 
Old 12-30-2008, 10:00 AM   #10
colucix
LQ Guru
 
Registered: Sep 2003
Location: Bologna
Distribution: CentOS 6.5 OpenSuSE 12.3
Posts: 10,509

Rep: Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983
What if you try the following alternative command as root?
Code:
yum localinstall compat-libstdc++-33-3.2.3-62.i386.rpm
Edit: regarding the error message, it means you have a lock which has not been removed from a previous rpm command. You can manually remove the file /var/lib/rpm/__db.000 but first check if some application still keeps the rpm database open:
Code:
lsof | grep /var/lib/rpm
If the command above does not show any line of output, then you can safely try to remove the file:
Code:
cd /var/lib/rpm
rm -f __db*
then run the rpm (or the yum) command again.

Last edited by colucix; 12-30-2008 at 10:19 AM.
 
Old 12-30-2008, 11:46 PM   #11
mail2sud
LQ Newbie
 
Registered: Dec 2008
Posts: 6

Original Poster
Rep: Reputation: 0
Sir,

When I try the command, the output is as follows:

[sudhakar@localhost rpm]$ lsof | grep /var/lib/rpm
bash: lsof: command not found


Also, /var/lib/rpm/__db.000 file is not there.. only __db.001, __db.002, __db.003 are there..

What should I do now?
 
Old 12-31-2008, 03:14 AM   #12
colucix
LQ Guru
 
Registered: Sep 2003
Location: Bologna
Distribution: CentOS 6.5 OpenSuSE 12.3
Posts: 10,509

Rep: Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983
lsof is a reserved command, that is you have to acquire root privileges to run it. So first do the command
Code:
su -
enter the root password and proceed as suggested. Also note you have to be root in order to install packages using yum or rpm.

Last edited by colucix; 12-31-2008 at 03:15 AM.
 
Old 12-31-2008, 04:00 AM   #13
mail2sud
LQ Newbie
 
Registered: Dec 2008
Posts: 6

Original Poster
Rep: Reputation: 0
Dear colucix,

Extremely sorry to bother you again n again; thank u very much for your replies..

Even after I change into root and try to use lsof command, it still says bash: lsof: command not found..

Is something else wrong?
 
Old 12-31-2008, 06:15 AM   #14
colucix
LQ Guru
 
Registered: Sep 2003
Location: Bologna
Distribution: CentOS 6.5 OpenSuSE 12.3
Posts: 10,509

Rep: Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983Reputation: 1983
Don't worry. It looks like you don't have the lsof package installed (I thought it was installed by default).

Ok. Now let's go. Since you don't have the __db.000 file anymore, try the yum command again (as root, otherwise it complains you cannot install the package):
Code:
yum localinstall compat-libstdc++-33-3.2.3-62.i386.rpm
if you get the same error again, try to reboot the machine (if possible). This should take care of the __db.00* files and remove them gracefully. After reboot, don't login in the X system (since the X login may automatically start the software updater which recreates the database files and locks any other attempt to use the yum or the rpm command.

Go to a virtual console, instead, using Alt-Ctrl-F1. Login as root, go to the dierctory where the compat-libstdc++33 package is stored and try to install again.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
compiling 2.6.26.3 with Intel compiler monohouse Linux - Kernel 7 09-10-2008 07:37 PM
Has anyone tried the Intel compiler? bigearsbilly Programming 3 12-22-2005 03:06 PM
Is there somebody can install Intel C++ compiler on Fedora box? melinda_sayang Fedora 0 02-07-2004 07:38 AM
Any HOWTOs about Intel C Compiler?? dNX Linux - General 0 01-11-2004 10:22 PM
intel c++ compiler sharky Linux - Software 0 08-17-2003 02:29 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie

All times are GMT -5. The time now is 09:41 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration