Re: problems upgrading.




On Mon, 28 Dec 1998, Reid, Rowan (GSP) wrote:
> 
> I am a new user to Linux.

Welcome!


> guess you could say I am 6 reference manuals, eight news groups and two
> many mail list to count old.
> So far I have been using the RedHat 5.1 distribution.   Being a tweaker
> I am not entirely satisfied with the package
> and would like to use most of the newest utilities and apps out there.

Sounds reasonable :-).  Check out ftp://rufus.w3.org/linux/rawhide/1.0,
there's lots of the latest and greatest (warning: possibly buggiest)
versions of things in there.


> To be specific GNOME & upgrading to the latest GTK libs.  Now when
> trying to upgrade to the latest release of gnome I am faced with
> upgrading all my libraries.   seems simple enough, but upgrading old
> libraries means uninstalling all the dependencies (3/4 of the software)
> then re-installing the upgraded library, then finding it needs several
> other libraries and utilities which I have to go find.

Not necesarily.  You are probably using "rpm -Uvh libfoo.rpm", what that
does is it removes all the old versions of libfoo.rpm and puts the new one
down (the vh gives you a nice status bar).  For many libraries, what you
should do is "rpm -ivh libfoo.rpm", that leaves all the old stuff in
place, and puts the new stuff in next to it.  In a few cases, this will
not work, and you have to use -Uvh; I've got more tips for that below.

Note: for the applications, and for the devel packages, you should be
using -Uvh, just use -ivh for the libraries (usually they are 
libsomething, somethinglib or something-libs).

Another thing you can do to save work is put multiple rpms on the same
line.  For example if bar.rpm depends on libfoo.rpm, and you are upgrading
both to the new version, instead of doing:
  $ rpm -e bar
  $ rpm -Uvh libfoo.rpm
  $ rpm -Uvh bar.rpm

You can do simply do:
  $ rpm -Uvh libfoo.rpm bar.rpm

The order of the rpms doesn't even matter.  That makes sure that all
dependancies are good when the list is finished, but doesn't worry if
something is broken while you're halfway through the list.

Another thing you can do is test an erase before you decide whether to
install (-ivh) or upgrade (-Uvh) a package.  Type
  $ rpm -e --test libfoo.rpm
  libfoo.so.1 is needed by bar-1.0-2

It will list everything that would break, so you either can install
(-ivh), or go find newer versions of the programs that will break (the
website I gave you above is a good place for that).


> Now this is completely unrealistic and as enthusiastic as I am about the 
> Linux movement I am unwilling to put up with something this complicated.

Another tip, there is a handy tool you can use called rpmfind.  Get it at:
  http://rufus.w3.org/linux/rpm2html/rpmfind.html

You can tell it, for example:
  $ rpmfind --upgrade libfoo
It will connect to rufus, find the latest version of libfoo and all
dependancies for you, tell you all the dependancies, and offer to download
and install them.


> Now being a newbie I am willing to accept the fact that I am completely
> clueless and have no idea what I am doing, to be honest that would be
> music to my ears.

It sounds like you've got the basics down pretty well.  It's time to learn
the shortcuts :-).


Best of Luck,
-Gleef



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]