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