On Mon, Jun 25, 2012 at 10:47:26AM +0800, Omar wrote:
> Thanks Ken.
> The following is software dependencies.
> I want to build AccountsService-0.6.21 in the first section of chapter 4, 
> which requires Polkit-0.106. Then Polkit-0.106 requires intltool-0.50.0, 
> intltool-0.50.0 requires XML::Parser-2.41, XML::Parser-2.41 requires 
> libwww-perl-6.04 (optionally used during the tests)  in section Perl Modules 
> of chapter 13.
> Do you mean that I needn't install libwww-perl-6.04? Does it affect the tests 
> though it is optional?
> 

 No, I mean that most people here never run the tests in BLFS.  For
some packages, the testsuite is clearly intended to be run by the
package's developer, as part of a pre-release test.  For others, the
tests are about corner-cases.  We generally take that view that
passing, or failing, a testsuite has little connection with whether
the package works correctly.

 Also, as far as I can see, there is only one reason to build
AccountsService - you intent to build gnome.  Several of the gnome
packages list it as a dependency, nothing else seems to.

> BTW,  I'm really in doubt now not only in this problem but also about how am 
> I going on according to BLFS book. In the introduction of book it is said 
> that I can elect what I need by myself. If it means that permissive range is 
> all sections from chapter 4 to the end. For example my aim is generating X 
> window, but I don't really know which packages I must build and which section 
> I should start in, chapter 4 or directly chapter 24. X Window System 
> Environment. Now my improvement is very slow.
> Give me some ideas please. Thanks.
> Omar

 OK.  The book is not intended to be read linearly.  Find what you
want to install, then work back through the dependencies.

1. Keep notes on what you build - in particular the order you build
the packages, and any changes you make to the commands.  For some
packages, particular in the audio and video area, there are a lot of
extra configure switches available, to make them use optional
dependencies.

2.  As you become more experienced, you will want to script your
builds of packages.  When you do that, try to catch errors.

3. The book is big.  Getting towards your desired desktop takes a
long time.  It is much easier if you break it up into discrete
stages.  In my own case the brekdown used to be :

(i) things I want before I even try to boot - in my case, this
includes fcron, ssh, nfs, smartmontools, pkg-config, postfix, lynx,
and (now) many other packages.  You won't want or need all of these.
My needs here are increased because my sources, scripts, notes, and
mail, are on my server.  Some of these, such as pkg-config and
which, should come at the beginning of everyone's desktop builds.

(ii.) things needed by the xorg packages, e.g. gperf, libpng,
freetype, fontconfig, intltool.  I now build Python2, pcre, libxml2,
libxslt, XML-Parser, XML-Simple, xmlto here.  And intltool.

(iii.) xorg itself - including libdrm, Mesa, xcb, fonts.  I long ago
changed from xterm to rxvt-unicode, and I build fluxbox instead of
twm [ no point inflicting pain on myself :) ].  At this point, I can
use xorg.  If it doesn't work, time to work out why and fix the
configuration or the build.

(iv.) graphics libs and toolkits - the basic packages needed to build
modern desktop packages.  Here, I'll list the packages in order:

 jpegsrc, libtiff, gif-lib, iso-codes, d-bus, icon-naming-utils,
startup-notification, glib2, cairo, gtk-doc, dbus-glib,
hicolor-icon-theme, desktop-file-utils, gobject-introspection,
pango, atk, shared-mime-info, cups [ so that when the printing
programs are all installed, gtk applications will be able to find
the cups queue(s) ], gdk-pixbuf, gtk+-2, gtk+-3, polkit (I'm still
on 0.105, so I don't need SpiderMonkey), GConf3, bc, xscreensaver.

 Again, you might not want all of those, but if you are going to use
gnome you will probably need most of them.  This order works for me.

 With those installed, I can move to my preferred window manager
(icewm-1.3).  From the book, openbox can be built now.

 This script used to include firefox - before html5, it used to be
simple (just nss, nspr, sqlite3), but now I build a *large* number
of audio/video tools first.  You can probably use the shipped
versions of the packages in firefox, at least in the beginning : I
prefer to use system libraries.

 Once you have a graphical browser, it becomes much easier to search
for help!

(v.) image (photo) manipulation and printing, plus the ability to
look at PDFs.

(vi.) office applications (gnome, abiword), most of the audio/video
applications (gstreamer comes later, for me)

(vii.) the parts of gnome which I build, and some runtime stuff (e.g.
gvfs).

4. Don't expect to get it all correct at first.  Once it is all good
enough for your requirements, remember that the build order may have
to change with newer versions of packages.

 Take your time to think about what you want to build, then work
backwards through the dependencies.  Once you have some things
working, you can look at others, with their dependencies, to see if
you want them.

 Until you know what you are doing, use the 'recommended'
dependencies as well as the 'required'.

 Enjoy the process!

ĸen
-- 
das eine Mal als Tragödie, das andere Mal als Farce
-- 
http://linuxfromscratch.org/mailman/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to