On 11/09/2018 11:10 AM, Pierre Labastie via lfs-dev wrote:
On 09/11/2018 17:19, Bruce Dubbs via lfs-dev wrote:
On 11/09/2018 09:44 AM, Pierre Labastie via lfs-dev wrote:
On 09/11/2018 14:30, Pierre Labastie via lfs-dev wrote:
On 09/11/2018 13:38, John Frankish via lfs-dev wrote:

As an aside, what is the first line of the current script meant to expand to?

$ for file in gcc/config/{linux,i386/linux{,64}}.h

gcc/config/linux/linux.h
gcc/config/linux/linux64.h
gcc/config/i386/linux.h
gcc/config/i386/linux64.h

..gcc/config/linux is not present in the gcc-8.2.0 source

Has coreutils always been able to deal with double {{}} or is a new(er) version required?

Brace expansion is done in bash.  You can always test the results with

echo gcc/config/{linux,i386/linux{,64}}.h
gcc/config/linux.h gcc/config/i386/linux.h gcc/config/i386/linux64.h

Ah - my problem is here:

$ for file in gcc/config/{linux,i386/linux{,64}}.h
do
echo $file
done
gcc/config/{linux,i386/linux{,64}}.h

$ for file in gcc/config/linux.h gcc/config/i386/linux.h gcc/config/i386/linux64.h
do
echo $file
done
gcc/config/linux.h
gcc/config/i386/linux.h
gcc/config/i386/linux64.h

Hmmm, is your host using bash? I just tried dash, and I get:
$ for file in gcc/config/{linux,i386/linux{,64}}.h
> do echo $file
> done
gcc/config/{linux,i386/linux{,64}}.h

If your system is debian-like, try "sudo dpkg-reconfigure dash"


Hmm, sorry, I see that your system is tinycore64. AFAICS, there is no dash shell in tinycore (unless you compiled it). It seems to have only bash... But maybe it is a stripped down version of bash, not interpreting double {. Or maybe you are using busybox shell (testing it on debian shows it does not interpret the double {).

The issue of dash vs bash should be handled in the version-check.sh script.

Let me note that I did a test build two days ago before the most recent commit.  The last change to gcc-pass1 was June 20th and the last change to the subject for loop in gcc-pass1 was done in December 2016.


Actually, the version-check.sh script ensures bash exists on the system, and that /bin/sh points to bash.

Correct.

It does not ensure that the user shell
is bash. Normally, since the lfs user is useradd'ed with "-s /bin/bash",

That is also done in the section 4.4. Setting Up the Environment.

the command su - lfs should run bash. I understand John is trying to use tinycore, so that he may have tried to minimize size, and not created user lfs (and not run "su" either)

That would would mean not following the book, but I didn't see that.

  -- Bruce

--
http://lists.linuxfromscratch.org/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to