LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (http://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   32 bit packages installed in 64 bit system (http://www.linuxquestions.org/questions/linux-newbie-8/32-bit-packages-installed-in-64-bit-system-794231/)

mewto 03-09-2010 10:27 AM

32 bit packages installed in 64 bit system
 
Hi, There,

I just installed CentOS 5.4 Final on a 64 bit system. After install, I found a lot of 32 bit packages are also installed. Is it necessary for a pure 64 bit system to run (let's say, I will never want to run any 32 bit app on this system), or is it something I could have avoided during install?

Thanks for your help in advance!

mewto 03-09-2010 10:44 AM

Follow up "32 bit packages installed in 64 bit system"
 
In case you wonder what is the big deal of having a few (hundred) extra packages installed. Here is the real dilemma I have.

As one of my requirements, I need to update libxml2 from version 2.6.26, as it comes with CentOS distro, to a more modern version >=2.7.1. I downloaded libxml2-2.7.6-1.x86_64.rpm from SourceForge and tried to upgrade but run into this

Quote:

[root@dmz-tms-02 libx]# rpm -Uvh libxml2-2.7.6-1.x86_64.rpm
Preparing... ########################################### [100%]
file /usr/share/man/man1/xmlcatalog.1.gz from install of libxml2-2.7.6-1.x86_64 conflicts with file from package libxml2-2.6.26-2.1.2.8.i386
file /usr/share/man/man1/xmllint.1.gz from install of libxml2-2.7.6-1.x86_64 conflicts with file from package libxml2-2.6.26-2.1.2.8.i386
That's when I realized that I have both i386 & x86_64 libxml2 installed. I can confirmed that:

Quote:

[root@dmz-tms-02 libx]# rpm -e libxml2-2.6.26-2.1.2.8
error: "libxml2-2.6.26-2.1.2.8" specifies multiple packages
[root@dmz-tms-02 libx]# rpm -q --queryformat "%{name}.%{arch}\n" libxml2
libxml2.x86_64
libxml2.i386
So I figured, I'll remove the old i386 version since it is the one causing conflict now. But things are never quite so easy:

Quote:

[root@dmz-tms-02 libx]# rpm -e libxml2.i386
error: Failed dependencies:
libxml2.so.2 is needed by (installed) libxslt-1.1.17-2.el5_2.2.i386
libxml2.so.2 is needed by (installed) libbonobo-2.16.0-1.fc6.i386
libxml2.so.2 is needed by (installed) libxml2-devel-2.6.26-2.1.2.8.i386
libxml2.so.2 is needed by (installed) GConf2-2.14.0-9.el5.i386
libxml2.so.2 is needed by (installed) gnome-vfs2-2.16.2-4.el5.i386
libxml2.so.2 is needed by (installed) xmlsec1-1.2.9-8.1.1.i386
That would be a lot of i386 packages to remove. Thus the question: Why are all these i386 packages installed?

sd|| 03-09-2010 10:48 AM

well! even if you are running a 64bit OS, many libraries you are installed on your system need not be 64 bit (they are not architecture dependent) as they are initially compiled for 32 bit systems they retain the nomenclature. So many packages which say 32 bit, they are either arch independent or they are to support third-party 32 bit software which you will install in future. This may be because of maintaining backward compatibility.

sd|| 03-09-2010 11:05 AM

even i fight with the same 32 - 64 bit conflicts.

install a 32 bit version of libxml2-2.7.6-1 so that the older version can get updated. that is the most painless option you have.

mewto 03-09-2010 01:30 PM

Thanks for the reply. That is a good point about backward compatibility. I took a more careful look at the two conflict I had. Those are all just man pages. Si I decide to just go ahead and force a upgrade with
Quote:

rpm -Uvh --nodeps --force libxml2-2.7.2-1.x86_64.rpm
Then it installed. Now on to the next step. The system needs to be checked out by developer.

chrism01 03-09-2010 07:42 PM

Don't use rpm cmds; use yum ; that's what it's for; it handles dependencies automatically for you.


All times are GMT -5. The time now is 10:24 PM.