Re: Mixing tarballs and RPMs



On Fri, 11 Jun 1999 jlh@geodesic.com wrote:

->There is a very serious bug when people try to switch
->from the RedHat 6.0 rpm gnome to any gnome library
->that one compiles from tarballs.   The gnome panel, the
->incons, the menu and the applications get horribly messed
->up.
->
->For example, I have a default RedHat 6.0 installation, which
->was running gnome just fine.  I downloaded only two tarballs,
->the latest gnome-libs and the latest gnome-core, and compiled
->and installed them to the default /usr/local destination.  Next,
->I 'rpm -e --nodeps' each of those libraries, and their development
->components, and ldconfig'd the new libs.
->
->The screen is now a mess.  All of icons are messed up, because
->gnome does not know to look to /usr/local/share for the pixmaps.
->Some of these can be fixed by hand, others not.  Many of the
->applications can no longer be found, for example, gnome-terminal
->does not show up in the menu.  When I create a new account,
->the '.gnome*' directories are created with bad information.
->
->At the very least, there should be some information about how to
->switch from an RPM to tarball based distribution, and I don't mean
->by removing all RPMs and starting from scratch.  It should not be
->that difficult to upgrate a single gnome component.
->
->However, I would also like to fix the current problem.  Is there a
->magic tarball that makes the .gnome directories in sync with the
->latest gnome-libs/core?  Should I just remove all the tarballs I've
->installed and reinstall the RedHat RPMs?
->
->Any advice is appreciated.  Thanks,
->
->John

To fix the problem, go to your gnome-libs and gnome-core source
directories and do a make uninstall.
Then, to install the tarball, and for all future gnome-tarballs, you must
do the following,

Run configure, make etc as folows.

./configure --prefix=/usr --sysconfdir=/etc
make
make prefix=/usr sysconfdir=/etc install

This will keep the new tarballed software in tune with the existing rpm'd
software. There are other options, such as sysstatedir (or something like
that) - check the MakeFile before you start. Sometimes make --help will
list possible options.

You should always run autoconf in this manner, then you will avoid
problems.

Also, its not usually a good idea to install a new version from a tarball,
*then* rpm -e--nodeps the old version. rpm will remove most of the new
version you just installed, as it will look the same as the old one. rpm
(AFAIK) just deletes a list of files when you do a -e.

The correct order is to *first*, compile the new version, and make sure it
compiles without problems. *second* rpm -e the old version, *third* make
install the new version.

I hope this is of use to you.

PS. The alternative is to compile your own rpms from the tarballs, not
nearly as hard as it sounds. That way your dependencies don't get screwed
up too much. Consult the rpm docs for more info.

Also, please don't call this a bug. More of a lack of clear
distribution-targetted documentation. I am working on putting some
together for Redhat distros.

A bug is an unintentional mis-operation. Installing to /usr/local by
default is perfectly intentional and not unreasonable by any means - even
on a Redhat system.

Tom.

-- 
   .------------------------------------------------------------------.
   | Tom Gilbert, England                        pingu@linuxfreak.com |
   | www.tomgilbert.freeserve.co.uk    tom@tomgilbert.freeserve.co.uk |
   |------------------------------------------------------------------|
   | Sites to Visit:                |    .~.                          |
   |     www.freshmeat.net          |    /V\        L  I  N  U  X     |
   |     www.gnome.org              |   // \\   >Beware the Penguin<  |
   |     www.enlightenment.org      |  /(   )\                        |
   |     themes.org                 |   ^^-^^      www.linux.com      |
   `------------------------------------------------------------------'



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