Click to See Complete Forum and Search --> : [Resolved] Off-topic
Norman Graham
02-28-2005, 06:33 PM
Hi all
This is not actually a direct LAMP query but rather a general Linux query, but you guys always have the best answers ...
Issue: I want to update to new versions of installed packages. YaST tells me these packages are vital to the system. The new versions are only available as source files.
Question - how do I upgrade safely without damaging my system? I know how to install from source, but how do I upgrade? I don't want to end up with two different versions running simultaneously.
Thanks.
Norm
id10t
02-28-2005, 11:35 PM
I wouldn't, if possible. For any system that uses a packaging system, it is better to always use the proper packages except for end-applications. No dependency problems, etc. that way, which could be a major problem especially if you are wanting to upgrade "packages are vital to the system"
If you need a bleeding edge distro, try debian -testing or -unstable or gentoo, or go with LFS or a base slack install then manage everything yourself via source.
Norman Graham
03-01-2005, 04:46 AM
I'm afraid that's not enormously helpful, but thanks anyway. The packages are not available as RPMs. I am not making this up. I need to upgrade some packages, but there are no RPMs. It's install from source or nothing. If what you are saying is true, then that basically means you install a Linux distro and can never upgrade it at all. If you want an upgrade, then wait a few years and buy a new Linux distro.
This contradicts the whole concept of Linux to my mind. There must be practical solutions to upgrading Linux software. I need to upgrade the following in order to install a new version of GIMP:
atk
freetype2
pango
glib
gtk+
... plus a couple of others. GIMP itself is available as an RPM, but not the required minimum versions of the packages I have listed. The 'GIMP toolkit' only contains source packages.
Thanks for any hints you can offer
Norm
mtmosier
03-01-2005, 12:01 PM
Generally speaking if you use a packaging system to update your system, you should stick to that packaging system for all programs. You don't have to do that obviously, but coming from someone who has mixed source and rpm on redhat and suse installs in the past, installing apps from rpm after installing major libraries (like gtk) from source suddenly becomes a major pain.
You can of course install applications which no other applications will depend on from source with few problems. But it gets really hairy when you start playing with libraries. You should decide if you want to manage your system via source for everything, or via rpm.
What version of gimp, and what version of suse are you looking at? Perhaps you could find a third party rpm repository to get the rpms from. Or perhaps you could get the source rpms from a newer version of suse, and rebuild them.
If all else fails you could build from source and use checkinstall (http://asic-linux.com.mx/~izto/checkinstall/) to create rpms. While checkinstall packages sometimes aren't much better about mingling with vendor supplied packages than a normal source install, at the very least you'll get an easy way to remove your packages at a later date via rpm.
id10t
03-01-2005, 12:01 PM
You could always compile from source, covert to rpm, and then install those rpms (maybe use checkinstall).
Its just that when you have a RPM based system, keeping core packages that many other things will depend on updated by rpm only makes sense.
Have you tried the other rpm repositories? Check rpmfind.net . And what packages/versions are you looking for?
Norman Graham
03-02-2005, 04:39 AM
Hi all
Thanks for your helpful suggestions. I now have CheckInstall and will attempt to use it.
I have SuSE 9.0 Pro which includes GIMP 1.3. I want to install GIMP 2.2, for which there is, indeed, a SuSE RPM. However, the documentation at gimp.org states the following minimum requirements prior to installing GIMP 2.2:
Freetype2 2.1.7
GTK+ 2.4.4
Pango 1.4.0
ATK 1.6.1
Glib 2.4.5
FontConfig 2.2.2
You also need pkg-config and libart2, both of which I found on my distro CDs and could install without further ado. However, the items listed above are installed in older versions. How can I update and ensure that interdependencies are maintained?
Thanks for you help
Norm
LordShryku
03-02-2005, 02:33 PM
I'd think this would have to be a typo, but FreeType is only out on release 2.1.9....
Now like the other people have said, if you're going to use a packaging system, stick to the packaging system. Building from source will cause you alot of headache simply because of directory structures. Different distro's put different things in different places. These packages are built assuming you have used the package dependancies, and will look in a specific place for those files. If they're not there, you'll find a lot of errors saying "so and so isn't installed", when you're thinking "but I just built that from source!".
But also learn the places to look. Just because Yast says it's not available doesn't mean it's really not available. Usually when a new release comes out, while it may take the distributors a long time to get all the different packages made, someone else already has, and will put it out on the internet somewhere. You can google for more, but I know that rpmfind (http://rpmfind.net/) usually has what I look for in terms of rpms.
Norman Graham
03-03-2005, 04:49 AM
Thanks Lord Shryku and others
RPM Find is working well. Next Linux newbie question: what's the difference between 386, 586 and 686 packages? I thought 386/486/586 etc referred to processor architecture. I have a reasonably modern box with AMD 1.8GHz and 256 RAM.
A quick look in /usr/src/packages/RPMS shows folders labelled 386, 586 and 686. These folders were put there by my distro, not by me. So what's the deal? Which packages do I need and what's the difference?
Final question: RPM find lists RPMs which are distro-specific. This is fine, but if I'm running SuSE 9.0 and the package I need, e.g. Freetype2 2.1.9, is listed as SuSE 9.2, does that mean I can't use it? Should I then take a source RPM and build the RPM locally? Or do I have to update to SuSE 9.2 first?
Sorry to be such a pain, but I feel these issues are fundamental to understanding Linux, which is what I want to do.
Thanks for your patience
Norm :D
PS: LAMP is now running sweetly with Apache 2, PHP 5 and MySQL 4. The mysqli extension is working fine. All compiled and installed from source. Thanks to all who helped me with that.
mtmosier
03-03-2005, 10:55 AM
386 packages are made by default as the lowest common denominator, so that anyone with an intel machine can use them. The 586 and 686 packages are optimized for newer machines. You should get the one which most closely matches your machine (almost certainly 686). In some rare cases you may see instability with overly optimized packages, but I doubt that you'd have that problem with any package distributed by SuSE.
You might be able to use a binary package for SuSE 9.2 without any problem. It depends on what else that package uses. Personally I'd go for the source rpm.
Norman Graham
03-03-2005, 12:03 PM
Thanks Mtmosier
I'll try my hand at using the source RPMs then. My administrator handbook for SuSE has a solid chapter about using source RPMs, which I shall study closely.
I'll mark this thread as resolved for the time being.
Thanks to all
Norm
PHP Builder
Copyright Internet.com Inc. All Rights Reserved.