testing uClibc patch

libber libber@AtlasWebmail.com
Mon Jan 5 06:31:00 GMT 2004


Hello I have been using the uClibc patchs to make a mipsel cc
(for the linksys wrt54g in particular).

1) all patches work great except the patch to crosstools itself,
a few hunks fail but they don't stop me from starting the build
script and it getting pretty far. here is what i get in crosstool.sh.rej

"*** 70,76 ****
  BINUTILS_DIR=`cd ${COMMON_SOURCE}${BINUTILS_DIR}; pwd`
  GCC_DIR=`cd ${COMMON_SOURCE}${GCC_DIR}; pwd`
  LINUX_DIR=`cd ${COMMON_SOURCE}${LINUX_DIR}; pwd`
- GLIBC_DIR=`cd ${COMMON_SOURCE}${GLIBC_DIR}; pwd`
  
  # make sure the build product's binaries are in the search
path
  PATH="${PREFIX}/bin:${PATH}"
--- 82,88 ----
  BINUTILS_DIR=`cd ${COMMON_SOURCE}${BINUTILS_DIR}; pwd`
  GCC_DIR=`cd ${COMMON_SOURCE}${GCC_DIR}; pwd`
  LINUX_DIR=`cd ${COMMON_SOURCE}${LINUX_DIR}; pwd`
+ LIBC_DIR=`cd ${COMMON_SOURCE}${LIBC_DIR}; pwd`
  
  # make sure the build product's binaries are in the search
path
  PATH="${PREFIX}/bin:${PATH}"
"
and here is what i get in the other rejects file
"
*** 88,96 ****
  	test -f $ARCHIVE_NAME || { echo "file $ARCHIVE_NAME not found";
return 1 ; }
  
  	if test -z "${COMMON_SOURCE}"; then
- 	    cd $BUILD_DIR/$GLIBC_DIR
  	else
- 	    cd $COMMON_SOURCE/$GLIBC_DIR
  	fi
  
  	if test $ZIP_METHOD = "gz" ; then
--- 96,104 ----
  	test -f $ARCHIVE_NAME || { echo "file $ARCHIVE_NAME not found";
return 1 ; }
  
  	if test -z "${COMMON_SOURCE}"; then
+ 	    cd $BUILD_DIR/$LIBC_DIR
  	else
+ 	    cd $COMMON_SOURCE/$LIBC_DIR
  	fi
  
  	if test $ZIP_METHOD = "gz" ; then
". so i added the last chunk ("if text -z $COMMON_SOURCE") with
the correct lines. as for the first failed chunk I could not
find the lines at all so i added another line for LIBC in crosstool.sh:70
like this
"LINUX_DIR=`cd $LINUX_DIR; pwd`
GLIBC_DIR=`cd $GLIBC_DIR; pwd`
LIBC_DIR=`cd $LIBC_DIR; pwd`
"

2) when it comes time to build uclibc there seems to be a problem.
these are the lines i get
"+ test '!' -f Makefile
+ uClibc-0.9.23/relocate
/usr/local/crosstool-0.25/crosstool.sh: line 260: uClibc-0.9.23/relocate:
No such file or directory
Done.
"
and when I look at line 260 in the patch I see "${LIBC_DIR}/relocate".
it seems from this (http://www.uclibc.org/lists/uclibc/2003-December/007747.html)
that relocate is a perl script, could I have a copy? :)

3) in getandpatch.sh:151 the urls for uclibc are incorrect, they
should be uclibc.org/downloads/old-releases/ instead of uclibc.org/downloads.


4) permissions for the relocate script, i needs to be chmodded
+x around line 260 in crosstool.sh

5) sed errors out with "Invalid reference \1 on `s' command's
RHS" fix is to put \s before any (s which i learned from http://albatross.madduck.net/pipermail/debian-unizh/2003-August/000125.html

so after doing all of those things and putting all the patches
in patches/ I have the compile process fail when it gets to libstdc++
in the gcc section. Here is the error:
"In file included from /usr/local/crosstool-0.25/build/mipsel-unknown-linux-gnu/gcc-3.3.2-uClibc-0.9.23/gcc-3.3.2/libstdc++-v3/src/ctype.cc:36:
/usr/local/crosstool-0.25/build/mipsel-unknown-linux-gnu/gcc-3.3.2-uClibc-0.9.23/build-gcc/mipsel-unknown-linux-gnu/libstdc++-v3/include/mipsel-unknown-linux-gnu/bits/ctype_noninline.h:
In
   constructor `std::ctype<char>::ctype(int*, const short unsigned
int*, bool,
   unsigned int)':
/usr/local/crosstool-0.25/build/mipsel-unknown-linux-gnu/gcc-3.3.2-uClibc-0.9.23/build-gcc/mipsel-unknown-linux-gnu/libstdc++-v3/include/mipsel-unknown-linux-gnu/bits/ctype_noninline.h:84:
error: cannot
   convert `const __ctype_touplow_t*' to `const int*' in assignment
/usr/local/crosstool-0.25/build/mipsel-unknown-linux-gnu/gcc-3.3.2-uClibc-0.9.23/build-gcc/mipsel-unknown-linux-gnu/libstdc++-v3/include/mipsel-unknown-linux-gnu/bits/ctype_noninline.h:85:
error: cannot
   convert `const __ctype_touplow_t*' to `const int*' in assignment
In file included from /usr/local/crosstool-0.25/build/mipsel-unknown-linux-gnu/gcc-3.3.2-uClibc-0.9.23/gcc-3.3.2/libstdc++-v3/src/ctype.cc:36:
/usr/local/crosstool-0.25/build/mipsel-unknown-linux-gnu/gcc-3.3.2-uClibc-0.9.23/build-gcc/mipsel-unknown-linux-gnu/libstdc++-v3/include/mipsel-unknown-linux-gnu/bits/ctype_noninline.h:
In
   constructor `std::ctype<char>::ctype(const short unsigned
int*, bool,
   unsigned int)':
/usr/local/crosstool-0.25/build/mipsel-unknown-linux-gnu/gcc-3.3.2-uClibc-0.9.23/build-gcc/mipsel-unknown-linux-gnu/libstdc++-v3/include/mipsel-unknown-linux-gnu/bits/ctype_noninline.h:114:
error: cannot
   convert `const __ctype_touplow_t*' to `const int*' in assignment
/usr/local/crosstool-0.25/build/mipsel-unknown-linux-gnu/gcc-3.3.2-uClibc-0.9.23/build-gcc/mipsel-unknown-linux-gnu/libstdc++-v3/include/mipsel-unknown-linux-gnu/bits/ctype_noninline.h:115:
error: cannot
   convert `const __ctype_touplow_t*' to `const int*' in assignment
make[3]: *** [ctype.lo] Error 1
make[3]: Leaving directory `/usr/local/crosstool-0.25/build/mipsel-unknown-linux-gnu/gcc-3.3.2-uClibc-0.9.23/build-gcc/mipsel-unknown-linux-gnu/libstdc++-v3/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/local/crosstool-0.25/build/mipsel-unknown-linux-gnu/gcc-3.3.2-uClibc-0.9.23/build-gcc/mipsel-unknown-linux-gnu/libstdc++-v3'
make[1]: *** [all-recursive-am] Error 2
make[1]: Leaving directory `/usr/local/crosstool-0.25/build/mipsel-unknown-linux-gnu/gcc-3.3.2-uClibc-0.9.23/build-gcc/mipsel-unknown-linux-gnu/libstdc++-v3'
make: *** [all-target-libstdc++-v3] Error 2
"

any advice or tips on how to continue past this error much appreciated.

thanks for your time,
Libber


- - - - - - - - - - - - - - - - - - - -
  The internet's 2nd-best-kept secret:
       http://AtlasWebmail.com/
 


------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com



More information about the crossgcc mailing list