[lfs-support] Greetings and first two questions

Qrux qrux.qed at gmail.com
Tue Jan 31 13:06:52 PST 2012

On Jan 31, 2012, at 5:48 AM, rafe_b wrote:

> On 01/31/2012 12:23 AM, Alain Toussaint wrote:
>>> Secondly, there was no 'gcc-4.x.x' directory
>>> created from the three un-tar operations in my
>>> case (from the V.7.0 LFS commands.)
>> there are 4 untar operation, gcc-4.6.1, mpfr, gmp and mpc.
> I'm sorry, this is not correct, either in LFS-BOOK 7.0,
> or in LFS-BOOK 6.8 (Sec. 5.5.1 of both versions.)

There *are* four untars.  The first is implicit.  The book does tell you, but makes several assumptions about your familiarity with building packages and the process for building them.

The point is that you didn't grok the intention of the book--not that anyone is "wrong", per se.  It may be because the book lacks enough clarity for someone in your position; or it may be that you're not terribly familiar with building open-source style packages.

> Please show me, in *either* book version (6.8 or 7.0)
> the step where I was supposed to untar the gcc
> tarball.

Many people have already done that, assuming that you may have simple overlooked it.  It seems, though, that you did see it, but don't understand its intent.  So, in more detail...It says in Section 5.3:

For each package:
	• Using the tar program, EXTRACT THE PACKAGE TO BE BUILT. In Chapter 5, ensure you are the lfs user when extracting the package.
	• CHANGE TO THE DIRECTORY CREATED when the package was extracted.
	• Follow the book's instructions for building the package.

The book is quite literal in many places, but in this case, it makes a general assumption here about a person's familiarity with building packages.  Specifically, where there's a chapter called:

	5.5. GCC-4.6.1 - Pass 1

it assumes this:

	0: That you realize the general directions in 5.3 apply at this point...

	1: That you realize the package that goes with this chapter is GCC-4.6.1.

	2: That it's probably named something like gcc-4.6.1.tar.bz2.

	3: That you realize that file (gcc-4.6.1.tar.bz2) is what is meant by:

		"the package to be built"

	4: That you understand "extract the package" to mean this:

		$ cd /mnt/tools/sources
		$ tar xf gcc-4.6.1.tar.bz2

	6: That you understand "change to the directory created..." to mean this:

		$ cd gcc-4.6.1

Once you are at this point, you can run the directions in 5.5.1.  From there, if you were to do:

	$ ls ../../mpfr-3.1.0.tar.bz2

You'll see that it's there.  All the directions meant to be followed in 5.5.1 assume you did the GENERAL COMPILATION steps (outlined in 5.3) for this package.  And, if you performed the last step of 'cd gcc-4.6.1', you'll be in the right place to build the rest.  Which is to say, from the gcc-4.6.1 directory, if you followed the directions in 5.5.1 literally, everything should be in their right places.

So, "before each chapter to be built that refers to a software package (where "5.5. GCC-4.6.1 - Pass 1" is an example of one of those chapters), do the following *BEFORE* you do the instructions for the package itself; i.e, please understand these assumptions are being made:

	* "package to be built" - gcc-4.6.1.tar.bz2
	* "extract the package" - tar xf gcc-4.6.1.tar.bz2
	* "change to the directory created..." - cd gcc.4.6.1

Hope this clarifies.


More information about the lfs-support mailing list