README updates.

This commit is contained in:
Manuel Canales Esparcia 2006-10-06 19:49:45 +00:00
parent 7b84722bba
commit 50b1fb75cf

133
README
View file

@ -4,11 +4,15 @@ $Id$
This collection of scripts, known as jhalfs, strives to create This collection of scripts, known as jhalfs, strives to create
accurate makefiles from the Linux From Scratch book series XML files. accurate makefiles from the Linux From Scratch book series XML files.
This software is an evolution of the original "jhalfs-0.2" code. This software is an evolution of the original "jhalfs-0.2" code developed
by Jeremy Huntwork.
The usage of this script assumes you have read and are familiar with The usage of this script assumes you have read and are familiar with
the book(s) and, therefore, the configuration variables found in config the book(s) and, therefore, the configuration variables found in menuconfig
files will have meaning to you. interface will have meaning to you.
The list of supported books can be found at
http://wiki.linuxfromscratch.org/alfs/wiki/SupportedBooks
NOTES:: NOTES::
*. The resulting Makefile takes considerable time to run to completion. *. The resulting Makefile takes considerable time to run to completion.
@ -35,61 +39,72 @@ $Id$
3. INSTALLATION:: 3. INSTALLATION::
No installation is required. System-wide installation is not allowed No installation is required. System-wide installation is not allowed.
for now.
4. CONFIGURATION FILES:: 4. CONFIGURATION::
::NEWS:: There is new configuration method for jhalfs. ::NEWS::
There is a new configuration method for jhalfs.
We have installed the familiar menu based configuration tool driven by We have installed the familiar menu based configuration tool driven by
by GNU make. see the section RUNNING, for details GNU make. see the section RUNNING, for details
5. RUNNING:: 5. RUNNING::
::NEWS:: jhalfs is now launched via GNU make instead of individual symlinks. ::NEWS::
jhalfs is now launched via GNU make instead of individual symlinks.
The command <make> will launch a menu based configuration program. You will The command <make> will launch a menu based configuration program. You will
recognize the layout from bulding the kernel or uClibc/Busybox. The recognize the layout from building the kernel or uClibc/BusyBox. The
underlying menu code was borrowed from BusyBox and slightly modified for underlying menu code was borrowed from BusyBox and slightly modified for
our use. our use.
Help on parameter function is available from the online help. Help on parameter function is available from the online help. Please
make use of that function for additional information not in this file.
Once you have set the parameters you wish and have saved your work the Once you have set the parameters you wish and have saved your work the
makefile will proceed to launch the jhalfs script. The script validate and jhalfs script is launch. The script verify first that the host can run
present you with your selections which you may accept or reject. it and build the xLFS system, then validate the configuration and present
you with your selections which you may accept or reject.
If you accepted the displayed settings jhalfs will proceed to create the If you accepted the displayed settings jhalfs will proceed to create the
makefile, optionally download packages. Makefile, optionally download packages.
::NEWS::
You must be logged as a normal user with sudo privileges to run
the Makefile.
NOTE:: NOTE::
If you run the jhalfs script directly the only funcion you can select is to If you run the jhalfs script directly the only function you can select
display the version number is to display the version number running <./jhalfs -v>
6. LAYOUT:: 6. LAYOUT::
/CLFS/config /BLFS (see README.BLFS)
/master.sh
/xxxx.xsl
/CLFS2/config /CLFS/master.sh
/master.sh /clfs.xsl
/xxxx.xsl
/HLFS/config /CLFS2/master.sh
/master.sh /clfs2.xsl
/xxxx.xsl
/LFS/config /HLFS/master.sh
/ master.sh /hlfs.xsl
/xxxx.xsl
/common/config /LFS/master.sh
/common_functions /lfs.xsl
/common/common_functions
/makefile_functions /makefile_functions
/func_check_versions.sh /func_check_versions.sh
/func_validate_configs.sh /func_validate_configs.sh
/packages.xsl
/urls.xsl
/create-sbu_du-report.sh
/func_compare.sh
/progress_bar.sh
/blfs-tool-deps/9xx-*
/contrib/jhalfs-paco.patch /contrib/jhalfs-paco.patch
@ -99,13 +114,26 @@ $Id$
/farce /farce
/filelist /filelist
/optimize/opt_config
/opt_override
/optimize_functions
/opt_config.d/noOpt
/noSymbols
/O3pipe
/O3pipe_march
/defOpt_fPIC
/menu/*
README README
README.BLFS README.BLFS
README.HLFS
README.PACO README.PACO
TODO TODO
LICENSE
Config.in Config.in
makefile Makefile
jhalfs jhalfs
blfs-tool blfs-tool
@ -117,10 +145,10 @@ $Id$
Q. "It doesn't work!" Q. "It doesn't work!"
A. Yes it does, try >> make A. Yes it does, try >> make
Remember you must either be 'root' to run this script or have 'sudo' privileges. Remember you must have 'sudo' privileges.
Q. "It still doesn't work" Q. "It still doesn't work"
A. jhalfs was designed to work against the developement versions of the LFS A. jhalfs was designed to work against the development versions of the LFS
series of books. Consequently changes in a book(s) sometimes breaks older series of books. Consequently changes in a book(s) sometimes breaks older
versions of jhalfs. Before you start pulling out your hair download the versions of jhalfs. Before you start pulling out your hair download the
latest version of jhalfs to see if that solves your problem. latest version of jhalfs to see if that solves your problem.
@ -133,42 +161,50 @@ $Id$
The layout below $BUILDDIR is as follows. The layout below $BUILDDIR is as follows.
$BUILDDIR/ $BUILDDIR/
jhalfs (makefile,cmd scripts,logs..etc) jhalfs (Makefile, cmd scripts, logs, etc..)
sources (where packages reside) sources (where packages reside)
tools (temporary bootstrap system) tools (temporary bootstrap system)
cross-tools (temporary CLFS only) cross-tools (temporary CLFS only)
... ...
FHS dir structure FHS dir structure
... ...
blfs_root (files to use blfs-tool if selected to install it)
Q. "What is the function of the SRC_ARCHIVE variable?" Q. "What is the function of the SRC_ARCHIVE variable?"
A. When then symlinked master.sh runs it creates a local copy of the A. When jhalfs runs and packages download was selected, it creates a local
necessary packages in BUILDDIR/sources by downloading the files. If copy of the necessary packages in BUILDDIR/sources by downloading the
the variable SRC_ARCHIVE is defined the software will first look in files. If the variable SRC_ARCHIVE is defined the software will first
this location for the file and, if found, will copy it to BUILDDIR/sources. look in this location for the file and, if found, will copy it to
BUILDDIR/sources.
If the files are not found in SRC_ARCHIVE _and_ you have write priv to If the files are not found in SRC_ARCHIVE _and_ you have write priv to
the directory any downloaded files will be mirrored there. the directory any downloaded files will be mirrored there.
Q. "How do I set the SRC_ARCHIVE location?" Q. "How do I set the SRC_ARCHIVE location?"
A. The best way to set the value of SRC_ARCHIVE is A. The best way to set the value of SRC_ARCHIVE is
export SRC_ARCHIVE=/wherever/you/store/downloaded/packages export SRC_ARCHIVE=/wherever/you/store/downloaded/packages
OR
you can change the setting in common/config. or you can set the full path in the proper menu entry.
Q. "Why have 2 copies of the files?" Q. "Why have 2 copies of the files?"
A. The package files must be visible during the chroot phase and this is a A. The package files must be visible during the chroot phase and this is a
simple and reliable method of doing so. This method also handles the CLFS simple and reliable method of doing so. This method also handles the CLFS
build method where the final build may be done on a separate machine. boot build method where the final build may be done on a separate machine.
Q. "What is the function of "User account" and "Group account" menu settings?"
A. If you are running jhalfs from a low or non-privileged account you may not
have the priv to create/delete the user needed to build temporally tools.
These settings allow you to use your own user and group name to do that
build steps.
These variables are adjustable also when invoking make:
Q. "What is the function of LUSER and LGROUP? There is no cmd line switch"
A. If you are running jhalfs from a low or non-priveledged account you may not
have the priv to create/delete accounts. These variables are adjustable
when invoking make.
$BUILDDIR make LUSER=myaccount LGROUP=mygroup $BUILDDIR make LUSER=myaccount LGROUP=mygroup
Then only changes to your account will be the creation of a NEW .bashrc after
saving your original to .bashrc.XXX
Q. "When I try to build 'xxx' with clfs the makefile fails at the mid-point" The only changes to your account will be the creation of a NEW .bashrc
after saving your original to .bashrc.XXX
Q. "When I try to build CLFS the Makefile fails at the mid-point"
A. There could be numerous reasons for the failure but the most likely reason A. There could be numerous reasons for the failure but the most likely reason
is you are doing a cross-build using the 'chroot' method and the target is is you are doing a cross-build using the 'chroot' method and the target is
not compatible with the host. If you choose to build using the chroot not compatible with the host. If you choose to build using the chroot
@ -187,4 +223,3 @@ $Id$
Authors: Authors:
George Boudreau George Boudreau
Manuel Canales Esparcia Manuel Canales Esparcia
Jeremy Huntwork