MySQL i386 libs conflict with x64?

Support for the other architectures (X86_64, s390(x) and PowerPC)
Post Reply
SyRenity
Posts: 39
Joined: 2006/12/25 17:15:42

MySQL i386 libs conflict with x64?

Post by SyRenity » 2007/01/11 21:03:46

Hi.

I need to run a 32-bit application on my CentOS 4.4 box. When I'm trying to install the i386 libraries via:

yum install mysql.i386

I'm receiving the following error:

Transaction Check Error: file /usr/lib/mysql/mysql_config from install of mysql-4.1.20-1.RHEL4.1 conflicts with file from package mysql-4.1.20-1.RHEL4.1
file /usr/lib/mysql/mysqlbug from install of mysql-4.1.20-1.RHEL4.1 conflicts with file from package mysql-4.1.20-1.RHEL4.1

Any idea what should be done here?

Thanks!

pjwelsh
Posts: 2589
Joined: 2007/01/07 02:18:02
Location: Central IL USA

Re: MySQL i386 libs conflict with x64?

Post by pjwelsh » 2007/01/12 01:11:20

Unless the app is statically linked to the mysql, it should not matter that the db is in 64bit mode. That is if you are using sockets or network calls, it does not matter.

However, you have some choices (good and not quite as good and better):
1. not so good... use the --force option it's only a config after all, right ;)
2. remove the 64bit mysql and *all* the deps (there are lots) and install the 32 bit like you already tried.
3. the better choice and the "short cut" is to use the wonderful "grouplist" in yum and [quote]yum groupremove MySQL Database[/quote]

SyRenity
Posts: 39
Joined: 2006/12/25 17:15:42

Re: MySQL i386 libs conflict with x64?

Post by SyRenity » 2007/01/13 20:15:50

Thanks, I got it resolved by following the 2nd choice via removing and re-installing all the mysql packages.


But I have hit another problem. The app still doesn't want to run, throwing the following errors:

./monitor: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.4' not found (required by ./monitor)
./monitor: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.6' not found (required by ./monitor)

The app itself was compiled on Fedora Core 4, this probably the effect. I wanted to resolve it by re-compiling it on 64-bit centos box in 32-bit mode (the -m32 switch), but have found out there is no mysql-devel.i386 package with the required libmysqlclient.a.

I got the i386 package manually from http://mirror.centos.org/centos/4/os/i386/CentOS/RPMS/mysql-devel-4.1.20-1.RHEL4.1.i386.rpm, but when I tried to install, I got similar error:

file /usr/include/mysql/my_config.h from install of mysql-devel-4.1.20-1.RHEL4.1 conflicts with file from package mysql-devel-4.1.20-1.RHEL4.1

Shouldn't there be some separation between the 32-bit and 64-bit development libraries as well?

Also, any idea what can be done here, other then juggling with mysql-devel packages for each compile?

Thanks again.

Lenard
Posts: 2283
Joined: 2005/11/29 02:35:25
Location: Indiana

MySQL i386 libs conflict with x64?

Post by Lenard » 2007/01/13 23:36:33

[quote]

file /usr/include/mysql/my_config.h from install of mysql-devel-4.1.20-1.RHEL4.1 conflicts with file from package mysql-devel-4.1.20-1.RHEL4.1

Shouldn't there be some separation between the 32-bit and 64-bit development libraries as well?

Also, any idea what can be done here, other then juggling with mysql-devel packages for each compile?
[/quote]

This is a problem RHEL 4 (CentOS 4) is not very multilib aware and ready, but it is improving. Some have found that when you have this conflict error simply installing both the 32 and 64-bit versions at the same time takes care of this issue. With both versions present in the same location do something like;

rpm -Uvh mysql-devel*.rpm

Yes, it might be a good idea to uninstall either version beforehand when installing both at the same time.

pjwelsh
Posts: 2589
Joined: 2007/01/07 02:18:02
Location: Central IL USA

Re: MySQL i386 libs conflict with x64?

Post by pjwelsh » 2007/01/14 00:50:16

my first google search for "GLIBCXX_3.4.4" produces:
http://blog.arabx.com.au/?p=109
as the first link. It looks like it may help you get started... buttttttt that EXACT version of 3.4.4 and 3.4.6 are not directly availible via CentOS default repos...
Here is the trick... yum can help you find some of "not found" issues. So, "yum provides some_file_to_look_for" will be your friend for easy ones. I did a "yum provides GLIBCXX_3.4.4" with NO results. But "yum provides GLIBCXX_3.4" yields some helpful results, but not an exact match :(

This means more work for you. More google check gets me this mysql bug:
http://bugs.mysql.com/bug.php?id=16491
The general gist is that get the udate of mysql-administor shortly (circa May 2006)
Next google attemp is "GLIBCXX_3.4.4 rhel rpm" and I find some help in:
http://rpmfind.net/linux/RPM/sourceforge/g/gn/gnuada/gnat-gcc-4.0.2-RHEL4.i386.html
maybe.

I have to ask, if this "monitor" program has source OR a rhel build (that would drop in correctly)?

Let us know how it goes.

SyRenity
Posts: 39
Joined: 2006/12/25 17:15:42

Re: MySQL i386 libs conflict with x64?

Post by SyRenity » 2007/01/14 08:37:35

[quote]This is a problem RHEL 4 (CentOS 4) is not very multilib aware and ready, but it is improving. Some have found that when you have this conflict error simply installing both the 32 and 64-bit versions at the same time takes care of this issue. With both versions present in the same location do something like;

rpm -Uvh mysql-devel*.rpm

Yes, it might be a good idea to uninstall either version beforehand when installing both at the same time.
[/quote]

Problem is, there is apparently NO 32-bit mysql-devel rpm package for CentOS x64_86. The only thing yum returns is mysql_devel.x64_86. The 32-bit devel can be installed from centos4.i386 ftp, and then one will need to constantly switch the devel packages between 32 and 64 for compilation.

[quote]
I have to ask, if this "monitor" program has source OR a rhel build (that would drop in correctly)?

Let us know how it goes.
[/quote]

The source is available, and after I installed the 32-bit mysql-devel RPM directly, it compiled without any problems. Apparently, because the app was initially compiled on Fedora Core 4, it caused some compatibility problems.


Thank you both for your help and efforts. The problem was resolved for now by installing the RPM directly, bypassing the yum. Question is, is it's possible to include the 32-bit mysql_devel libraries in the x64_86 distro, and who should be addressed for this?

Lenard
Posts: 2283
Joined: 2005/11/29 02:35:25
Location: Indiana

Re: MySQL i386 libs conflict with x64?

Post by Lenard » 2007/01/14 14:51:35

This whole multilib thing and packaging placement is being worked on, but it takes time, for example from a copy of the RHEL 5 x86_64 beta2 DVD;

[code]
$ ls -al mysql*
-rw-r--r-- 1 root root 3175686 Sep 11 20:00 mysql-5.0.22-2.1.i386.rpm
-rw-r--r-- 1 root root 3187016 Sep 11 20:00 mysql-5.0.22-2.1.x86_64.rpm
-rw-r--r-- 1 root root 525185 Sep 11 20:00 mysql-bench-5.0.22-2.1.x86_64.rpm
-rw-r--r-- 1 root root 143363 Sep 11 19:59 mysql-connector-odbc-3.51.12-2.2.x86_64.rpm
-rw-r--r-- 1 root root 2484454 Sep 11 20:01 mysql-devel-5.0.22-2.1.i386.rpm
-rw-r--r-- 1 root root 2523883 Sep 11 20:01 mysql-devel-5.0.22-2.1.x86_64.rpm
-rw-r--r-- 1 root root 10535028 Sep 11 19:57 mysql-server-5.0.22-2.1.x86_64.rpm
-rw-r--r-- 1 root root 2148142 Sep 11 20:02 mysql-test-5.0.22-2.1.x86_64.rpm
[/code]

Yes, I know currently things are a bit of a pain but they are getting better. Red hat has been revamping the next maintenance release of RHEL4 (update 5) to cover some of this and getting RHEL5 ready to go by the end of February.

The next version of yum is better at mutilib and Red Hat will be using yum as the preferred update application. RHEL5 is based on the work done for FC5/6/7 (mostly FC6). Some of us have been testing out RHEL5 for the past few months and reporting issues and problems, one of them is the mysql issue you have been experiencing. Many have reporting other multilib issues and other packaging issues and of course bugs. The "Gold" release is almost upon us to meet the planned release date and things are looking real good.

SyRenity
Posts: 39
Joined: 2006/12/25 17:15:42

Re: MySQL i386 libs conflict with x64?

Post by SyRenity » 2007/01/30 18:55:52

Thanks for the news. I hope these issues will be indeed ironed out in the next version of CentOS.

Post Reply