Solved

rpm install gave conflcts from another package

Posted on 2011-02-15
12
1,503 Views
Last Modified: 2012-05-11
Hi,

Kindly advise how do I go about resolving the following problem:

# rpm -i mysqlclient14-4.1.22-1.el4s1.1.i386.rpm
warning: mysqlclient14-4.1.22-1.el4s1.1.i386.rpm: V3 DSA signature: NOKEY, key ID 443e1821
        file /usr/lib/mysql/libmysqlclient.so.14.0.0 from install of mysqlclient14-4.1.22-1.el4s1.1 conflicts with file from package mysql-4.1.12-3.RHEL4.1
        file /usr/lib/mysql/libmysqlclient_r.so.14.0.0 from install of mysqlclient14-4.1.22-1.el4s1.1 conflicts with file from package mysql-4.1.12-3.RHEL4.1

I also tried the upgrade option but no joy :
# rpm -U mysqlclient14-4.1.22-1.el4s1.1.i386.rpm
warning: mysqlclient14-4.1.22-1.el4s1.1.i386.rpm: V3 DSA signature: NOKEY, key ID 443e1821
        file /usr/lib/mysql/libmysqlclient.so.14.0.0 from install of mysqlclient14-4.1.22-1.el4s1.1 conflicts with file from package mysql-4.1.12-3.RHEL4.1
        file /usr/lib/mysql/libmysqlclient_r.so.14.0.0 from install of mysqlclient14-4.1.22-1.el4s1.1 conflicts with file from package mysql-4.1.12-3.RHEL4.1


# rpm -qa | grep -i sql
mysql-4.1.12-3.RHEL4.1
cyrus-sasl-sql-2.1.19-5.EL4
perl-DBD-MySQL-2.9004-3.1
postgresql-libs-7.4.8-1.RHEL4.1
php-mysql-4.3.9-3.8
sqlite2-2.8.17-2.el4.remi
mysql-server-4.1.12-3.RHEL4.1
#
0
Comment
Question by:sunhux
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 7
  • 4
12 Comments
 
LVL 31

Accepted Solution

by:
farzanj earned 400 total points
ID: 34903382
If you don't need the existing version of RPM, you may first erase it by

rpm -e mysql

Then you can install it
rpm -ivh mysqlclient14-4.1.22-1.el4s1.1.i386.rpm

If you think that the conflicts would not affect you, use --force

rpm -Uvh --force mysqlclient14-4.1.22-1.el4s1.1.i386.rpm
0
 
LVL 31

Expert Comment

by:farzanj
ID: 34903386
You can delete the older version after installing the new version also.  But try uninstalling old version first.
0
 

Author Comment

by:sunhux
ID: 34903440

I would rather not uninstall the old version but just "upgrade" it because
when trying to uninstall the old version it complains that it's currently
being used by several applications.

Strange thing is the required file libmysqlclient.so.14 is found in my
server & I've added the path /usr/lib/mysql to PATH variable as well
but still getting this issue

# cp -p /usr/lib/mysql/libmysqlclient.so.14 .
[root@tmp]# rpm -i ./dovecot-2.0.9-1_125.el4.i386.rpm
warning: only V3 signatures can be verified, skipping V4 signature
error: Failed dependencies:
        libmysqlclient.so.14(libmysqlclient_14) is needed by dovecot-2.0.9-1_125.el4.i386
[root@ tmp]# ls -ld /usr/lib/mysql/libmysqlclient.so.*
lrwxrwxrwx  1 root root      24 Aug 17  2005 /usr/lib/mysql/libmysqlclient.so.14 -> libmysqlclient.so.14.0.0
-rwxr-xr-x  1 root root 1139172 Aug 23  2005 /usr/lib/mysql/libmysqlclient.so.14.0.0


[root@ tmp]# rpm -qa | grep -i mysql
mysql-4.1.12-3.RHEL4.1
perl-DBD-MySQL-2.9004-3.1
php-mysql-4.3.9-3.8
mysql-server-4.1.12-3.RHEL4.1
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 31

Assisted Solution

by:farzanj
farzanj earned 400 total points
ID: 34903484
This was a terrible trouble with rpm and that is why yum was introduced in RHEL5.

You have to begin somewhere.  A is dependent on B, B is dependent on C and C is dependent on A and it is never resolved.  So you have to use your judgement and have to force it to uninstall by using.

rpm -e --nodeps mysql

For instance you could make the above command run by issuing the following command.

 rpm -ivh --nodeps ./dovecot-2.0.9-1_125.el4.i386.rpm
0
 
LVL 31

Expert Comment

by:farzanj
ID: 34903495
If you want to upgrade without any trouble:

Try

yum -y update mysql
0
 
LVL 31

Expert Comment

by:farzanj
ID: 34903499
For yum to run, you need at least RHEL5/CentOS5 etc.
0
 

Author Comment

by:sunhux
ID: 34903507

The --force option managed to get the libmysqlclient & dovecot rpms installed.

However, now my dovecot can't start (but I guess this is a different problem now) :


# init.d/dovecot start
Starting Dovecot Imap: Error: socket() failed: Address family not supported by protocol
Error: service(pop3-login): listen(::, 110) failed: Address family not supported by protocol
Error: socket() failed: Address family not supported by protocol
Error: service(pop3-login): listen(::, 995) failed: Address family not supported by protocol
Error: socket() failed: Address family not supported by protocol
Error: service(imap-login): listen(::, 143) failed: Address family not supported by protocol
Error: socket() failed: Address family not supported by protocol
Error: service(imap-login): listen(::, 993) failed: Address family not supported by protocol
Fatal: Failed to start listeners
                                                           [FAILED]
0
 
LVL 31

Assisted Solution

by:farzanj
farzanj earned 400 total points
ID: 34903536
Try:

rpm -Fvh or rpm -Uvh
To take care of dovecot

If you have yum, use it
yum -y update dovecot

0
 

Author Comment

by:sunhux
ID: 34903566

I'm on RHES 4.2, not RHEL 5.  Unfortunately this box has no yum connectivity
permitted (by firewall) to Internet
0
 
LVL 31

Assisted Solution

by:farzanj
farzanj earned 400 total points
ID: 34903580
Well, try reinstalling or freshen (-F) the dovecot RPM as I described above.  Forget about yum.
0
 
LVL 79

Assisted Solution

by:arnold
arnold earned 100 total points
ID: 34903994
RHEL 4 used the up2date feature and you would need to have your system registered with rhn.redhat.com.
0
 

Author Closing Comment

by:sunhux
ID: 34912882
excellent
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The purpose of this article is to demonstrate how we can use conditional statements using Python.
It’s 2016. Password authentication should be dead — or at least close to dying. But, unfortunately, it has not traversed Quagga stage yet. Using password authentication is like laundering hotel guest linens with a washboard — it’s Passé.
Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:
Connecting to an Amazon Linux EC2 Instance from Windows Using PuTTY.
Suggested Courses

636 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question