[mc1322x] linking in math libraries?
Mariano Alvira
mar at devl.org
Thu Apr 8 09:31:21 EDT 2010
On Thu, Apr 08, 2010 at 12:00:49AM -0700, Andrew Pullin wrote:
> On 4/7/2010 2:37 PM, Mariano Alvira wrote:
>> On Wed, Apr 07, 2010 at 01:05:13PM -0700, Andrew Pullin wrote:
>>
> Well, that seems to work properly. Would newlib solve this & other
> problems?
I just tried my newlib build and it does solve the build issue. The
rftests are 10KB larger though and it looks like printf doesn't work
at all...
> newlib-1.16 seems to build with the OpenEmbedded toolchain if
> you link arm-elf-* to arm-linux-* , although I don't know where to
> install it or how to link against it. I'm no compiler expert!
For now you can change the linking line in Makefile.include from
something like:
%_$(BOARD).elf: $(OBJDIR)/%.o $(START) $(ISR) $(SRCOBJS)
$(LINKERSCRIPT) $(LIBMC1322X)/libmc1322x.a $(OBJDIR)/b\
oard.a $(MC1322X)/src/src.a
$(CC) $(LDFLAGS) \
-L $(LIBMC1322X) -L $(MC1322X)/src -L $(OBJDIR) $< -o $@
$(START) $(MC1322X)/src/src.a --start-group $(OBJDIR)/board.a
$(LIBMC1322X)/libmc1322x.a -lm --end-group
to:
%_$(BOARD).elf: $(OBJDIR)/%.o $(START) $(ISR) $(SRCOBJS)
$(LINKERSCRIPT) $(LIBMC1322X)/libmc1322x.a $(OBJDIR)/b\
oard.a $(MC1322X)/src/src.a
$(CC) $(LDFLAGS) \
-L $(LIBMC1322X) -L $(MC1322X)/src -L $(OBJDIR) $< -o $@
$(START) $(MC1322X)/src/src.a -L /home/malvira\
/build-newlib/arm-elf/newlib/ --start-group $(OBJDIR)/board.a
$(LIBMC1322X)/libmc1322x.a -lm --end-group
where I added a -L to the patch that has libm.a etc.. from newlib.
>
> Along the same lines, is there an accepted way of building a more
> minimal toolchain?
Louis has some scripts over at open-mc13224v. I haven't tried them
though.
There is also a VM for Quahogcon:
http://quahogcon.org/contests/
http://quahogcon.org/mc1322x-Dev-VM.torrent
> OE works great, but it seems to be more targeted to
> linux development; lots and lots and packages to build.
I only use OE to build the toolchain once, then I add add the cross
tools it builds to my path and such when I need to build mc1322x
stuff. e.g. I source a file that has this:
export PATH=/home/malvira/mc1322x-oe/tmp/cross/armv4t/bin:/home/malvira/build-gdb/gdb:$PATH
> There are
> instructions at http://www.gnuarm.org/support.html that will results in
> a compiler that seems to have problems with
> "-mcallee-super-interworking" when building the libmc1322x tests.
Unfortunately the callee-super-interworking is necessary to use the ROM
calls...
-Mar.
More information about the mc1322x
mailing list