Re: Wanting to try Gnome, need a little advice



On Thu, Feb 05, 2004 at 03:32:58PM -0500 or thereabouts, b p wrote:
> Patrick,
> 
> Compiling and installing applications on UNIX/LINUX aren't nearly as hard 
> as they sound. It's genrally three simple steps (four if you include cd'ing 
> to the directory)
> 
> $>tar -xzj app-version.tar.gz (or tar -xjf app-version.tar.bz2 if it's bz2 
> compressed)
> $>cd app-version
> $>./configure
> $>make
> $>make install (may have to be root for this)

I agree that this is the basic way to do compilation and that once
you are used to it it's pretty easy. But..

> that's it! 

I wish!

I don't know anyone who compiles Gnome tarballs without the
aid either of a list of what to do in what order or a build
script that actually does it.

In addition, I can think of a few other gotchas when you start
playing with this. 

> >The slight hitch is, I've never compiled C programs before. I gather the
> >compiler and other necessary tools are standard on this system. I currently

The compilers and other tools probably are standard. What may not
be there are the header files for applications. 

Forgive me if I am teaching my grandmother to suck eggs here :) 

When you (or, usually, your distro) take a source rpm or deb and 
generate binary rpms or debs from it, it is common to split the
binary rpms built from "foo.src.rpm" into "foo.i386.rpm", which
contains what is necessary to run "foo", and "foo-devel.i386.rpm",
which contains what is necessary for other applications to build
if they require foo to be on the system. (ie, a dependency).

And the -devel rpms may not be installed on the system initially,
although they will all be on the CDs or ftp site. 

So as soon as you start to try to build tarballs (tarballs do
_not_ split into this division, incidentally) and you get messages
in ./configure about "Checking if foo is installed.... no" and
it stops, you do "rpm -q foo", find it is installed, and think
"Now what?"

Someone invariably suggests installing foo from tarballs, but
the right solution is to find the matching (same version number)
foo-devel and install it. Then delete the config.cache or whatever
and start again.

The next problem is where to install it. ./configure accepts
a large number of arguments, one of which is saved until the
make install stage: the prefix. configure sets up the makefile;
make compiles the thing and results in binaries in your directory;
make install puts those binaries elsewhere on the system. 

It is good practice to put stuff built locally from tarballs into 
/usr/local. If you start putting them into /usr itself (rather
than in /usr/local) or somewhere else that rpm uses, you can get 
into a muddle. Your new files will overwrite other files put
there by rpm and so on. 

I use /opt/gnome2 for locally-built Gnome stuff, but I believe
that SuSE already makes use of /opt. I don't know it if has a
/opt/gnome2 there already. If it _does_, then make a /opt/mygnome/
or something else you have to create yourself so that you know
that SuSE is not subsequently going to put rpms in it.

If you're the only user on the system, or the only one who's
going to be playing with a new Gnome, then you should be able
to install it all into your home directory: a common choice is
to create a ~/bin or ~/gnome2 or something.

(All this gnome2 rather than gnome25 or gnome26 is because people
started doing this sort of thing when testing beta Gnome 2 out
and didn't want to overwrite working Gnome 1 versions. Hence,
gnome2. Should be gnome25 or gnome26 now, I suppose.)

If I haven't put you off totally, then there is one more problem.
The compile order. Clearly to build gnome-vfs-extras you want
gnome-vfs there first. To build evolution, you want the libraries
evolution uses there first. And so on. And this list of packages
is long and huge.

Which is why everyone uses the build scripts that b p mentioned.
These exist to do it all for you. Having used jhbuild and got
half a working Gnome out of it (I need to install some more
-devel rpms to have the dependencies right for the other half :)) 
I am an instant fan of that, but that's for building from CVS.

The scripts I know of for building the tarballs are garnome
and CVSGNOME (despite the name). Both require some initial
configuring ("tarballs? yes" "where to install it? ~/garnome"
etc), and then you kick them off and they do the work.

  http://www.gnome.org/~jdub/garnome
  http://www.akcaagac.com/index_cvsgnome.html

Garnome has its own mailing list (see the webpage).

But. But, but, but, but!

> >Currently running KDE 3.1 desktop on SuSE Linux 8.2 on a Dell computer,
> >Pentium IV w/ much RAM and diskspace.

Did you know that Ximian provides Ximian Desktop 2 for SuSE 8.2?
I honestly think that will be much, much easier!

If you upgrade to SuSE 9.0, you can also look at 
http://www.usr-local-bin.org/ which has endless updated Gnome
packages for that version. And that would be easier too.

I feel awful typing all this, because it makes Gnome look
terribly unfriendly and needlessly difficult. Other people
here will probably point out that I can break anything and
compiles are no exception. But I do think that it might be
better to compile something else first as a sort of test
drive and to go and look at Ximian's stuff first if your
main aim currently is to get Gnome on your box :) 

But if you do want to compile Gnome from scratch, use a 
build script!

Telsa

PS: I'm also confused on why Gnome won't install on your box
at all, since it is on the CDs; but I don't know enough about
SuSE to hazard an intelligent guess.




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