EmbeddedRelated.com
Forums

GNUARM "ERROR: lcd.o uses software FP, whereas main.elf uses hardware FP"

Started by arrek_x February 22, 2006
--- In lpc2000@lpc2..., Mukund Deshmukh <betacomp_ngp@...> 
wrote:
>
> > > > I've changed my gcc compiler form gcc-3.3.1 to
gnuarm's gcc-4.
0.1.
> > > > While integrating with Keil's
uVision3 IDE I'm getting (while
> > linking)
> > > > above mentioned error (for every *.o
> > >
> > > Can you explain how to integrate gcc-4.0.1 with keil?
> > > I tried but uVision3 generates error like object file not found.
> > >
> >
> > Could you tell what exactly the error is?
> >
> 
> I am using winarm.
> The gcc compiler down loaded from Keil site works well.
> But if I use winarm, it gives object file not found.
> By the way I have observed that code size is large (5000) when I 
compile
> with gcc from keil and its very low (1000 bytes)
when I compile with 
winarm.
> Any idea?

About code size - check optimization option (-O) in compiler's 
parameters list. There are several levels of optimization:

-O default
-O0 no opt.
-O1 level1
-O2 level2 (big speed)
-O3 level3
-Os small size
	

An Engineer's Guide to the LPC2100 Series

Yes, it worked well! Now it is fully usable, thanks!

Thiago Takehara
Computer Engineer
Engworks Industrial LTDA - R&D Division
  ----- Original Message ----- 
  From: arrek_x 
  To: lpc2000@lpc2... 
  Sent: Thursday, February 23, 2006 10:00 AM
  Subject: [lpc2000] Re: GNUARM "ERROR: lcd.o uses software FP, whereas
main.elf uses hardware FP"
	  --- In lpc2000@lpc2..., "Thiago Takehara" <thiago@...> wrote:
  > I could not find make for GNUARM. Someone knows if it exists? In 
  >case the answer is 'no', can I use the standard GNU make from
cygwin 
  >with GNUARM?

  You surely can. Make is just a make, and nothing but make ;).
  There's a helloworld_gnuarm.zip example in Files section, where 
  Microsoft's NMAKE has been used for example.
	  SPONSORED LINKS Microcontrollers  Microprocessor  Intel microprocessors  
        Pic microcontrollers
	------
  YAHOO! GROUPS LINKS 

    a..
	------
	
	
> > I am using winarm.
> > The gcc compiler down loaded from Keil site works well.
> > But if I use winarm, it gives object file not found.
> > By the way I have observed that code size is large (5000) when I
> compile
> > with gcc from keil and its very low (1000 bytes) when I compile with
> winarm.
> > Any idea?
> 
> About code size - check optimization option (-O) in 
> compiler's parameters list. There are several levels of optimization:
> 
> -O default
> -O0 no opt.
> -O1 level1
> -O2 level2 (big speed)
> -O3 level3
> -Os small size

After you've checked the optimization flags:
Do you know which C libraries you are using in each case ?

WinARm by default is setup to use newlib. I recall a discussion on here
about Keil using by default a different C library. It was in a
discussion about C lib licensing issues.
It might be you are comparing apples with oranges. (This is not to say
one lib is better than another; just your app may end up with a smaller
fit in the newlib case, or the library was compiled with a different
optimisation (or even thumb mode) even if your app is compiled at the
same optimisation level.)

Cheers,
Bruce