Opened 12 years ago

Last modified 12 years ago

#37342 new submission

Work on eCos eabi toolchain

Reported by: billy@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.1.2
Keywords: Cc:
Port:

Description

I'm working on a set of ports to support the "official" eCos arm-eabi toolchain that uses gcc-4.3.2 and binutils-2.18.50.20080513. See http://ecos.sourceware.org/getstart.html. The binutils build worked just fine using the crossbinutils.setup script. I'm having problems building the arm-eabi-gcc however. I started with the Portfile I've been using for arm-elf-gcc (4.3.2) for some time. It has worked since Leopard and I'm now running Mountain Lion with Xcode 4.5.2 with the latest Macports. I changed the target to arm-eabi and I have attached it along the the log file from the build attempt and the patch files. It seems to do the right thing for much of the build but I can't find the relevant error in the logs.

There is a longer story here too. I eventually need to replace newlib with the eCos generated headers but I thought I would get it build with newlib first. See http://www.codeconfidence.com/technote-0003.shtml.

Attachments (7)

Portfile (11.5 KB) - added by billy@… 12 years ago.
Make-lang.in.diff (532 bytes) - added by billy@… 12 years ago.
patch-gcc-config-arm-t-arm-elf.diff (1.8 KB) - added by billy@… 12 years ago.
patch-newlib-libc-configure.diff (539 bytes) - added by billy@… 12 years ago.
main.log (7.8 MB) - added by billy@… 12 years ago.
Portfile.newlib (12.0 KB) - added by billy@… 12 years ago.
Portfile to build with newlib
Portfile.no-newlib (11.4 KB) - added by billy@… 12 years ago.
Portfile to build without newlib but with eCos headers

Change History (10)

Changed 12 years ago by billy@…

Attachment: Portfile added

Changed 12 years ago by billy@…

Attachment: Make-lang.in.diff added

Changed 12 years ago by billy@…

Changed 12 years ago by billy@…

Changed 12 years ago by billy@…

Attachment: main.log added

comment:2 in reply to:  1 Changed 12 years ago by billy@…

Replying to mfeiri@…:

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32332

Thank you mfeiri. I disabled objc from the --enable-languages configure option and it builds cleanly now. The "Official" eCos toolchain is built without Objective C so I may just leave it at that. I will try to build with the eCos headers (without newlib) next. The eCos instructions referenced above indicate I should copy those under ${worksrcpath}/sys-include/include and then use --with-newlib. Those directories don't exist in the newlib build I just did so I'm not quite sure if that will work. There is also a eCos patch set I need to apply and will try it as well. I also noticed that when I continued with the full install I got an arm-eabi-gcc-4.3 instead of the arm-eabi-gcc I was looking for. I need to figure out how to limit the installed binary to arm-eabi-gcc. I'll post my progress here for anyone interested.

comment:3 Changed 12 years ago by billy@…

I'm going to need some help here. While I can build gcc using the approach recommended at http://www.codeconfidence.com/technote-0003.shtml I first have to install a newlib version using the attached Portfile.newlib, then manually copy the ecos headers to /opt/local/arm-eabi/sys-include, then build using the attached Portfile.no-newlib. So here is exactly what I do:

cd ~/ports/cross/arm-eabi-gcc cp Portfile.newlib Portfile cd ../.. portindex sudo port -d install arm-eabi-gcc (and wait several hours) cd ~/ports/cross/arm-eabi-gcc cp Portfile.no-newlib Portfile cd ../.. portindex sudo port -d install arm-eabi-gcc (and wait several hours)

It builds clean but doesn't activate the last build because it thinks it is already activated. I've read the MacPorts Guide multiple times and can't see a path forward even though I can probably get to something to work for me personally. I suspect if I knew enough about building gcc I could put the includes somewhere and configure it to look for them there. Note that if I use Portfile.no-newlib on a completely clean system with no arm-eabi-gcc installed it fails.

Changed 12 years ago by billy@…

Attachment: Portfile.newlib added

Portfile to build with newlib

Changed 12 years ago by billy@…

Attachment: Portfile.no-newlib added

Portfile to build without newlib but with eCos headers

Note: See TracTickets for help on using tickets.