[uClibc] Buildroot issues with gcc 2.95.3 AND 3.3.2 mipsel

James A. Beaulieu beaulieu at ti.com
Wed Feb 4 21:15:04 UTC 2004


On Wednesday 04 February 2004 14:13, Manuel Novoa III wrote:
> Hello,
>
> On Wed, Feb 04, 2004 at 11:47:33AM -0500, James A. Beaulieu wrote:
> > Greetings.
> >
> > I am trying to build a new toolchain using gcc 2.95.3 to add c++ support
> > to our system, and I seem to be running into problems. I downloaded both
> > the toolchain and buildroot packages from CVS on 2/3/2004. I am building
> > for mipsel.
> >
> > I would prefer to build a 2.95.3 compiler. When building either the
> > toolchain or buildroot with gcc 2.95.3, I get an the following errors
>
> ... <errors deleted>
>
> > yet, the file gcc/config/mips/t-mips specifically mentions that it does
> > not need to build libgcc1.a
> >
> > Should I just touch an empty libgcc1.a, or make an empty libgcc1.a with
> > ar?
>
> No idea, since I've never tried building a 2.95 mips compiler.  My only
> real use for a 2.95 compiler is building older kernels.  I'm pretty sure
> I only tested for x86 and arm.
>
> You could give it a try, although I don't see why it would be a problem
> specific to uClibc.  So you might try some google'ing.
>
> > I will try to build a 3.3.2 gcc version next. But based on my experience,
> > the 3.2.2 compiler builds bigger executables then 2.95.3.
>
> Well I know that the 3.3.2 build _does_ work.
>
> Manuel

Well, I just tried the buildroot and toolchain build for the 3.3.2 compiler 
for mipsel, and that failed too. 

Sigh, it just isn't my day.

Using Makefiles quite similar to the ones posted before, I tried to build the 
3.3.2 compiler, and got the following errors.

ln -fs ../ldso/mips/ld_sysdep.h include/
make -C ldso;
make[3]: Entering directory 
`/home/a0850426/cli/buildroot/build_mipsel/uClibc/ldso/ldso'
echo "const char *_dl_progname=\""ld-uClibc.so.0"\";" > _dl_progname.h
echo "#include \"mips/elfinterp.c\"" >> _dl_progname.h
/home/a0850426/cli/buildroot/build_mipsel/staging_dir/bin/mipsel-linux-uclibc-gcc  
-Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing  -Os   
-mno-split-addresses  -mips1 -fPIC -DUCLIBC_RUNTIME_PREFIX=\"/\" -fno-builtin 
-nostdinc -I../../ldso/include -I. -I../../include 
-I/home/a0850426/cli/buildroot/build_mipsel/staging_dir/lib/gcc-lib/mipsel-linux-uclibc/3.3.2/include 
-I../libdl -c mips/resolve.S -o mips/resolve.o
/home/a0850426/cli/buildroot/build_mipsel/staging_dir/bin/mipsel-linux-uclibc-strip 
-x -R .note -R .comment mips/resolve.o
/home/a0850426/cli/buildroot/build_mipsel/staging_dir/bin/mipsel-linux-uclibc-gcc  
-Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing  -Os   
-mno-split-addresses  -mips1 -fPIC -DUCLIBC_RUNTIME_PREFIX=\"/\" -fno-builtin 
-nostdinc -I../../ldso/include -I. -I../../include 
-I/home/a0850426/cli/buildroot/build_mipsel/staging_dir/lib/gcc-lib/mipsel-linux-uclibc/3.3.2/include 
-I../libdl -c ldso.c -o ldso.o
In file included from _dl_progname.h:2,
	                 from ldso.c:156:
mips/elfinterp.c: In function `_dl_parse_lazy_relocation_information':
mips/elfinterp.c:159: warning: `return' with a value, in function returning 
void
mips/elfinterp.c: In function `_dl_parse_relocation_information':
mips/elfinterp.c:174: warning: declaration of `rpnt' shadows a parameter
mips/elfinterp.c:180: error: structure has no member named `dyn'
mips/elfinterp.c:177: warning: unused variable `old_val'
ldso.c:454:2: warning: #warning "Debugging threads on mips won't work till 
someone fixes this..."
../../ldso/include/ld_syscall.h: In function `_dl_boot2':
../../ldso/include/ld_syscall.h:56: warning: use of memory input without 
lvalue in asm operand 7 is deprecated
In file included from ldso.c:1327:
../../ldso/include/ld_syscall.h: In function `_dl_load_elf_shared_library':
../../ldso/include/ld_syscall.h:56: warning: use of memory input without 
lvalue in asm operand 7 is deprecated
../../ldso/include/ld_syscall.h:56: warning: use of memory input without 
lvalue in asm operand 7 is deprecated
../../ldso/include/ld_syscall.h:56: warning: use of memory input without 
lvalue in asm operand 7 is deprecated
../../ldso/include/ld_syscall.h:56: warning: use of memory input without 
lvalue in asm operand 7 is deprecated
../../ldso/include/ld_syscall.h:56: warning: use of memory input without 
lvalue in asm operand 7 is deprecated
In file included from ldso.c:1327:
../../ldso/include/ld_syscall.h: In function `_dl_dprintf':
../../ldso/include/ld_syscall.h:56: warning: use of memory input without 
lvalue in asm operand 7 is deprecated
In file included from ldso.c:1327:
../../ldso/include/ld_syscall.h: In function `_dl_malloc':
../../ldso/include/ld_syscall.h:56: warning: use of memory input without 
lvalue in asm operand 7 is deprecated
../../ldso/include/ld_syscall.h: In function `_dl_mmap':
../../ldso/include/ld_syscall.h:56: warning: use of memory input without 
lvalue in asm operand 7 is deprecated
make[3]: *** [ldso.o] Error 1
make[3]: Leaving directory 
`/home/a0850426/cli/buildroot/build_mipsel/uClibc/ldso/ldso'
make[2]: *** [all] Error 2
make[2]: Leaving directory 
`/home/a0850426/cli/buildroot/build_mipsel/uClibc/ldso'
make[1]: *** [_dir_ldso] Error 2
make[1]: Leaving directory `/home/a0850426/cli/buildroot/build_mipsel/uClibc'
make: *** [/home/a0850426/cli/buildroot/build_mipsel/uClibc/lib/libc.a] Error 
2



Now, these errors do look like error with the uClibc mips loader. However, a 
quick look through the archives seems to imply that the mips little endian 
stuff was working for buildroot. (Specifically looking at this message 
http://www.uclibc.org/lists/uclibc/2003-December/007684.html)

Thanks again. I will continue to look into it, but any help is greatly 
appreciated.

Jim




More information about the uClibc mailing list