PDA

View Full Version : Broken dependancies, eek!



diyfiesta
30th November 2005, 10:03 AM
Hi Folks,

Sorry, bit of a newbie question...

I've got broken dependancies and was hoping someone could outline how to fix!? The packages in question are;

java-1.4.2-gcj-compat-1.4.2.0-40jpp_31rh.FC4.1
java-1.4.2-gcj-compat-1.4.2.0-40jpp_31rh

if I try a rpm -e java-1.4.2-gcj-compat-1.4.2.0-40jpp_31rh --nodeps, I get;

/var/tmp/rpm-tmp.30293: line 8: /usr/bin/rebuild-security-providers: No such file or directory
error: %postun(java-1.4.2-gcj-compat-1.4.2.0-40jpp_31rh.i386) scriptlet failed, exit status 127


which just about exhausts my rpm knowledge. So, I tried looking at apt-get which gives me this;

[root@localhost ~]# apt-get check
Reading Package Lists... Done
Building Dependency Tree... Done
You might want to run `apt-get --fix-broken install' to correct these.
The following packages have unmet dependencies:
java-1.4.2-gcj-compat#0:1.4.2.0-40jpp_31rh: Depends: gjdoc but it is not installable
java-1.4.2-gcj-compat#0:1.4.2.0-40jpp_31rh.FC4.1: Depends: gjdoc but it is not installable
E: Unmet dependencies. Try using --fix-broken.

so, I tried what it suggested... (hope you're still with me!)

[root@localhost ~]# apt-get --fix-broken install
Reading Package Lists... Done
Building Dependency Tree... Done
Correcting dependencies... Done
The following packages will be REMOVED:
java-1.4.2-gcj-compat#0:1.4.2.0-40jpp_31rh java-1.4.2-gcj-compat#0:1.4.2.0-40jpp_31rh.FC4.1 jessie
0 upgraded, 0 newly installed, 3 removed and 24 not upgraded.
Need to get 0B of archives.
After unpacking 403kB disk space will be freed.
Do you want to continue? [Y/n] Y
Committing changes...
Preparing... ########################################### [100%]
/var/tmp/rpm-tmp.36389: line 8: /usr/bin/rebuild-security-providers: No such file or directory
error: %postun(java-1.4.2-gcj-compat-1.4.2.0-40jpp_31rh.FC4.1.i386) scriptlet failed, exit status 127
/var/tmp/rpm-tmp.36389: line 8: /usr/bin/rebuild-security-providers: No such file or directory
error: %postun(java-1.4.2-gcj-compat-1.4.2.0-40jpp_31rh.i386) scriptlet failed, exit status 127
/var/tmp/rpm-tmp.36389: line 1: /usr/bin/rebuild-security-providers: No such file or directory
error: %postun(jessie-1.0.0-8.noarch) scriptlet failed, exit status 127
W: Some errors occurred while running transaction


finally, I tried;

[root@localhost ~]# apt-get remove java-1.4.2-gcj-compat#0:1.4.2.0-40jpp_31rh
Reading Package Lists... Done
Building Dependency Tree... Done
You might want to run `apt-get --fix-broken install' to correct these:
The following packages have unmet dependencies:
java-1.4.2-gcj-compat#0:1.4.2.0-40jpp_31rh.FC4.1: Depends: gjdoc but it is not installable
E: Unmet dependencies. Try 'apt-get --fix-broken install' with no packages (or specify a solution).

but couldn't install gjdoc whatever that is.

Anyway, hope someone can point me in the right direction. Sorry for the long note too ;)

Cheers,
Toby

multescugeorge@
30th November 2005, 01:06 PM
First try:
rpm --rebuilddb
if that don't work:
install the package in question with:
yum -y install --force java-1.4.2-gcj-compat*
then uninstall it with:
yum erase --force java-1.4.2-gcj-compat*
perhaps this will fix it.
your problems appeared when you wanted to force the instalation of the other package, correct?

diyfiesta
30th November 2005, 03:51 PM
Thanks,

The problem just appears, that is I mustn't have been paying attention when it did. I didn't force anything as far as I know it, just been doing lots of install/uninstalls lately.

I did the rpm --rebuilddb but still had the problem, so tried the yum install --force, after some output, it showed;

No Match for argument: --force

I couldn't find anything about forcing things in man, so after the install command, the output showed a problem with a dependancy;


<snip>
libstdc%2B%2B-devel-4.0.2 100% |=========================| 67 kB 00:00
---> Package libstdc++-devel.i386 0:4.0.2-8.fc4 set to be updated
--> Running transaction check
--> Processing Dependency: gcc = 4.0.1 for package: libtool
--> Finished Dependency Resolution
Error: Missing Dependency: gcc = 4.0.1 is needed by package libtool

so...

[root@localhost ~]# yum install gcc

and repeated the yum install line... the same again! I don't know *what* I'm doing!

So, I tried the erase line as suggested; it produced this;

Transaction Summary
================================================== ===========================
Install 0 Package(s)
Update 0 Package(s)
Remove 3 Package(s)
Total download size: 0
Is this ok [y/N]: y
Downloading Packages:
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Removing : java-1.4.2-gcj-compat ######################### [1/3]
/var/tmp/rpm-tmp.63023: line 8: /usr/bin/rebuild-security-providers: No such file or directory
error: %postun(java-1.4.2-gcj-compat-1.4.2.0-40jpp_31rh.FC4.1.i386) scriptlet failed, exit status 127
Removing : java-1.4.2-gcj-compat ######################### [2/3]
/var/tmp/rpm-tmp.63023: line 8: /usr/bin/rebuild-security-providers: No such file or directory
error: %postun(java-1.4.2-gcj-compat-1.4.2.0-40jpp_31rh.i386) scriptlet failed, exit status 127
Removing : jessie ######################### [3/3]
/var/tmp/rpm-tmp.63023: line 1: /usr/bin/rebuild-security-providers: No such file or directory
error: %postun(jessie-1.0.0-8.noarch) scriptlet failed, exit status 127

Removed: java-1.4.2-gcj-compat.i386 0:1.4.2.0-40jpp_31rh java-1.4.2-gcj-compat.i386 0:1.4.2.0-40jpp_31rh.FC4.1
Dependency Removed: jessie.noarch 0:1.0.0-8
Complete!

and apt-get check still shows broken dependancies...

any ideas?

Thanks in advance :)

multescugeorge@
30th November 2005, 05:48 PM
i made a search on rpm.pbone.net on "rebuild-security-providers" and it can be found in:
ftp://mirror.switch.ch/mirror/fedora/linux/core/test/4.90/i386/os/Fedora/RPMS/jpackage-utils-1.6.3-1jpp_1rh.noarch.rpm
So install it and try to install gcc again.

multescugeorge@
30th November 2005, 05:52 PM
aaaa, but yum shows:
Removed: java-1.4.2-gcj-compat.i3860:1.4.2.0-40jpp_31rh java-1.4.2-gcj-compat.i386 0:1.4.2.0-40jpp_31rh.FC4.1
Dependency Removed: jessie.noarch 0:1.0.0-8
Complete!
so it removed the offending packages, now reinstall one of them, with yum:
yum -y install java-1.4.2-gcj-compat*
(or install the other one)
("--force" was my mistake, i was thinking about rpm... sorry, i'm only human)

multescugeorge@
30th November 2005, 07:05 PM
I had this error a few minutes ago too.
Error: Missing Dependency: gcc = 4.0.1 is needed by package libtool
this happens because libtool wants a gcc with version 4.0.1 but a gcc 4.0.2 is available. Next week i think it will be fixed (i hope), for now i erased kdevelop and libtool and the update goes smoothly. I'll reinstall libtool right after the update.

diyfiesta
1st December 2005, 10:06 AM
ok, thanks for that.

Bear with me as I'm not confident with this stuff, but doing a rpm -qa | grep java still gives me;

java-1.4.2-gcj-compat-1.4.2.0-40jpp_31rh.FC4.1
java-1.4.2-gcj-compat-1.4.2.0-40jpp_31rh

So I'm assuming things are still there where they shouldn't be. Annoyingly, installing the package you suggested results in;

[root@gazelle ~]# rpm -Uvh /home/toby/temp/jpackage-utils-1.6.3-1jpp_1rh.noarch.rpm
warning: /home/toby/temp/jpackage-utils-1.6.3-1jpp_1rh.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing... ########################################### [100%]
package jpackage-utils-1.6.6-1jpp (which is newer than jpackage-utils-1.6.3-1jpp_1rh) is already installed

grrrr, not good! I tried install libtool again via yum but it said there was nothing to do! so I removed libtool and tried again with the yum install java... this ran much smoother and (I think) installed it ok, although there was a complaint about a missing key;


<snip>
(13/14): java-1.4.2-gcj-c 100% |=========================| 8.1 kB 00:00
(14/14): libgcc-4.0.2-8.f 100% |=========================| 60 kB 00:00
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
public key not available for cpp-4.0.2-8.fc4.i386.rpm

I'm thinking though, this line meant it was ok?

[root@gazelle ~]# rpm -qa | grep cpp
cpp-4.0.1-4.fc4

doing an apt-get check still complains;

W: There are multiple versions of "java-1.4.2-gcj-compat" in your system.

So, not really knowing what I'm doing, I tried your "force" trick and re-installed the security thing;

rpm -Uvh --force /home/toby/temp/jpackage-utils-1.6.3-1jpp_1rh.noarch.rpm

which worked and miraculously, after a yum remove java... it actually removed it! An apt-get check, shows no problems! yey!

Thanks very much for your help,
Toby

ps, what's the best way to check my rpm database is in good condition? apt-get check?

multescugeorge@
1st December 2005, 10:12 AM
the best way is to *NOT* use --force and --nodeps unless absolutley NECESSARY.
It shoudn't get messed up.
(I used it on a ypops package, it wanted /lib/libcrypto.so.0.9.7 and i had a libcrypto.so.0.9.7f, so i made a link, but the link wasn't recognized, it still wanted that file (ver.0.9.7 and not 0.9.7.f), so i used --nodeps, knowing i had ALL the dependencies satisfied)