On 3/28/07, yayo <[EMAIL PROTECTED]> wrote:
>
> >Also, when do you mean? It seems to be
> >around 0:15 in Italy right now.
>
> well, here it's 1.20am right now.
> And I'm online.
> (I'm on windows, since I'm doing some things,
> but if you think you can be here, I'll reboot to linux.
> I need just 5 minutes to save a game I'm playing and rebooting/connect.)

I'm not at a machine I can do IRC on right now. In 1.5 hours I could
probably be at home and able to do that, but it would be 3am for you.

> >If we can't find time to chat, try doing "mkdir lib/auto" before "make
> >perl utilities ...". Hopefully that will get you past that problem and
> >it will be the only issue.
>
> Yeah. this would probably be a solution for perl.
> but what if the bug is in bash as it seems to be?
> Would this lead to other problems later on the LFS building path? :/
> (If I'm required to compile && install bash I suppose it must work, isn't it? 
> :P)

Right. I think this is a bug building bash and I'd like to see why.
Here's the basic test case:

$ cat > test.sh <<"EOF"
#!/tools/bin/bash

# put something in $1
set -- foo

# turn on tracing
set +x

# see if $1 is substituted in this for loop
for arg do
    echo $arg
done
EOF

$ chmod +x test.sh

The output should say something like for arg in '"$@"' do... and then
echo foo. In your case, it's never substituting $@, so the for loop
does nothing. Now, when I look at the bash code, this behavior is
defined in a bison parser. So, my guess is that the bison on your host
isn't doing what we expect.

IIRC, you said you have bison-1.75. In the development book it says
the minimum bison is 1.26a. This is just a guess. It was a comment I
found in the bash code and never tested. The fact is that all the
developers have been using bison-2.2 or 2.1 probably.

So, I'd like you to first install bison-2.2 to a temporary location
that's in the PATH. Maybe $HOME/bison or /tmp/bison.

http://ftp.gnu.org/gnu/bison/

./configure --prefix=$HOME/bison
make
make install

export PATH=$HOME/bison:$PATH

Now, rebuild /tools/bin/bash as in Ch. 5.14 and try the test case. If
it fixes it as I described above, great. At least we know it's a
problem with a too old bison. In that case, it would be extra great if
you could keep installing older versions of bison in $HOME/bison and
rebuilding /tools/bin/bash until you find the version where the test
case breaks. But I could do that later myself if it's too much effort.

If that doesn't fix things, then we'll have to do some more digging.

> >If that doesn't work, I suggest getting the
> >LFS LiveCD as that is a system that is known to work with LFS.
>
> If I need to download it to burn a CD.. well, then it could be a problem,
> since I'm on dialup. It would take ages to download it all. :P
> (Otherwise I would be using that now, instead of a knoppix found in home. :P)

Yeah, it would take you a long time to download the ISO. At the very
minimum, I would suggest just updating the bison on knoppix and seeing
if that helps. You wouldn't have to start again from the beginning.
Just rebuild /tools/bin/bash with the newer bison and go back to perl.

--
Dan
-- 
http://linuxfromscratch.org/mailman/listinfo/lfs-support
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page

Reply via email to