This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: newlib build error + can I use c-only build to compile a simple c code?




> Cristian Amitroaie wrote:
> 
> Hi folks!
> 
> What's this?
> 
> make[2]: Leaving directory `/usr/local/src/gnu/BUILD/newlib/v850/newlib'
> Making all in libc
> make[2]: Entering directory
> `/usr/local/src/gnu/BUILD/newlib/v850/newlib/libc'
> Making all in stdlib
> make[3]: Entering directory
> `/usr/local/src/gnu/BUILD/newlib/v850/newlib/libc/stdlib'
> v850-gcc -B/usr/local/src/gnu/BUILD/newlib/v850/newlib/ -isystem
> /usr/local/src/gnu/BUILD/newlib/v850/newlib/targ-include -isystem
> /usr/local/src/gnu/newlib-1.9.0/newlib/libc/include -DPACKAGE=\"newlib\"
> -DVERSION=\"1.9.0\"  -I.
> -I/usr/local/src/gnu/newlib-1.9.0/newlib/libc/stdlib  -O2
> -DPREFER_SIZE_OVER_SPEED -mv850 -mno-app-regs -msmall-sld
> -I../../targ-include
> -I/usr/local/src/gnu/newlib-1.9.0/newlib/libc/../libc/include
> -fno-builtin      -g -O2 -c
> /usr/local/src/gnu/newlib-1.9.0/newlib/libc/stdlib/__adjust.c
> cc1.exe: Invalid option `no-app-regs'
> cc1.exe: Invalid option `small-sld'

These are arguments that are not yet supported by gcc.  My understanding
is that they are (or were planned to be) in the Cygnus/RedHat source but
apparently still have not been merged.  You can search the newlib archives
but I have included the post here (watch tabs when applying the patch,
I just cut and pasted):

oel Sherrill wrote:
> 
> "J. Johnston" wrote:
> >
> > Joel Sherrill wrote:
> > >
> > > configure.host specifies that v850 targets are to be built with this:
> > >
> > > newlib_cflags="${newlib_cflags} -DPREFER_SIZE_OVER_SPEED -mv850
> > > -mno-app-regs -msmall-sld"
> > >
> > > Unfortunately, gcc does not yet support at least the -msmall-sld option.
> > >
> > > --
> > > Joel Sherrill, Ph.D.             Director of Research & Development
> > > joel@OARcorp.com                 On-Line Applications Research
> > > Ask me about RTEMS: a free RTOS  Huntsville AL 35805
> > >    Support Available             (256) 722-9985
> >
> > Joel,
> >
> >   You are correct.  This should be removed.  The attached patch applied
> > in the devo/newlib directory makes the fix.  ( patch <net182.patch ).
> > This patch is only required by users who are configuring a v850 build.
> 
> I also should have asked .. does gcc 2.95.2 support the -mno-app-reg
> option?
> 2.95.1 does not.
> 

Joel,

  I got sloppy.  It should have been removed as well.  The attached patch
should be applied on top
of the previous one.  Again, this only applies to users that configure
for the v850.

-- Jeff J.




*** configure.host      Mon Dec  6 21:09:15 1999
--- configure.host.new  Wed Dec  8 16:33:52 1999
*************** case "${host_cpu}" in
*** 152,166 ****
        ;;
    v850)
        machine_dir=v850
!       newlib_cflags="${newlib_cflags} -DPREFER_SIZE_OVER_SPEED -mv850
-mno-app-regs"
        ;;
    v850e)
        machine_dir=v850
!       newlib_cflags="${newlib_cflags} -DPREFER_SIZE_OVER_SPEED -mv850
-mno-app-regs"
        ;;
    v850ea)
        machine_dir=v850
!       newlib_cflags="${newlib_cflags} -DPREFER_SIZE_OVER_SPEED -mv850
-mno-app-regs"
        ;;
    w65*)
        machine_dir=w65
--- 152,166 ----
        ;;
    v850)
        machine_dir=v850
!       newlib_cflags="${newlib_cflags} -DPREFER_SIZE_OVER_SPEED -mv850"
        ;;
    v850e)
        machine_dir=v850
!       newlib_cflags="${newlib_cflags} -DPREFER_SIZE_OVER_SPEED -mv850"
        ;;
    v850ea)
        machine_dir=v850
!       newlib_cflags="${newlib_cflags} -DPREFER_SIZE_OVER_SPEED -mv850"
        ;;
    w65*)
        machine_dir=w65

> v850-gcc: file path prefix `/usr/local/src/gnu/BUILD/newlib/v850/newlib/'
> never used
> make[3]: *** [__adjust.o] Error 1
> make[3]: Leaving directory
> `/usr/local/src/gnu/BUILD/newlib/v850/newlib/libc/stdlib'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory `/usr/local/src/gnu/BUILD/newlib/v850/newlib/libc'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/usr/local/src/gnu/BUILD/newlib/v850/newlib'
> make: *** [all-target-newlib] Error 2
> 
> And why if I use the c-only build of gcc on
> 
> int main()
> {
>     int a,b,c;
>     a = 10;
>     b = a + 1;
>     c = a + b;
>     return c;
> }
> 
> I get
> 
> $ v850-gcc f.c
> /usr/local/v850/lib/gcc-lib/v850/2.95.2-6/../../../../v850/bin/ld: cannot
> open crt0.o: No such file or directory
> collect2: ld returned 1 exit status

You need to build the C library and install it before crt0.o is there.


> although I get no error on c-only installation.
> 
> Thnx,
> Cristian A.

-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel@OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
Support Available                (256) 722-9985

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]