On 6/22/06, Aaron Miller <[EMAIL PROTECTED]> wrote:
Hello,

I am working though Chapter 6 in Hardened Linux From Scratch - Version
SVN-20060510 and I ran into a strange problem when I try to make gcc.

if [ -f stmp-dirs ]; then true; else touch stmp-dirs; fi
make[2]: Leaving directory `/tools/gcc-build/gcc'
make[1]: Leaving directory `/tools/gcc-build/gcc'
Checking multilib configuration...
multilib.out is unchanged
Configuring in /libstdc++-v3
configure: error: cannot find sources (src/ios.cc) in ../../../gcc-3.4.5/libstdc
++-v3
make: *** [configure-target-libstdc++-v3] Error 1

Now I am pretty new to Linux so I apologize if the answer might seem obvious to
some people, but why is the configure trying to go back 3 levels of
directories to
find the source?

If it goes back 3 levels from /tools/gcc-3.4.5/libstdc++-v3 would that
not try and find
the source in '/gcc-3.4.5/libstdc++-v3/src'? I found the section in
the libstdc++
configure file that does the test, but I didn't really understand what
I needed to change to only go back 2 directories when testing if the
source is present.

Could anyone point me in the Right direction? google returned 0 results.

Thanks for your time!
...aaron


I'm really sorry to reply to my own message so quickly. I should have
made sure I was finished before I hit send. According to the comments
in the configure, it looks like it tries to find it in the current
directory, then goes up a directory and check there. This is probably
why it makes it all the way to the / directory before failing. I think
the better question would be, "why does it not find src/ios.cc in the
current directory?" I verified that is is infact there.  Here is the
test routine in the configure script:

if test -z "$srcdir"; then
 ac_srcdir_defaulted=yes
 # Try the directory containing this script, then its parent.
 ac_confdir=`(dirname "$0") 2>/dev/null ||
$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
        X"$0" : 'X\(//\)[^/]' \| \
        X"$0" : 'X\(//\)$' \| \
        X"$0" : 'X\(/\)' \| \
        .     : '\(.\)' 2>/dev/null ||
echo X"$0" |
   sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
         /^X\(\/\/\)$/{ s//\1/; q; }
         /^X\(\/\).*/{ s//\1/; q; }
         s/.*/./; q'`
 srcdir=$ac_confdir
 if test ! -r $srcdir/$ac_unique_file; then
   srcdir=..
 fi
else
 ac_srcdir_defaulted=no
fi
if test ! -r $srcdir/$ac_unique_file; then
 if test "$ac_srcdir_defaulted" = yes; then
   { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir$
  { (exit 1); exit 1; }; }
 else
   { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
  { (exit 1); exit 1; }; }
 fi
fi
(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
 { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not wor$
  { (exit 1); exit 1; }; }
--
http://linuxfromscratch.org/mailman/listinfo/hlfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to