GCC für R8C/M16C/M32C

Mit folgenden Schritten habe ich den GCC unter MacOS 10.3.9 kompiliert. Für Linux geht das ziemlich ähnlich; vgl. Anmerkungen. Für MacOS Tiger Benutzer: Hinweise zu R8C/M16C/M32C-GCC für MacOS X Tiger 10.4.2 (Vielen Dank an Gerhard Muth für diese Infos).

Binutils

Binutils: Von http://sources.redhat.com/binutils/ aktuellen Snapshot herunterladen.
$ tar xvjf binutils-051115.tar.bz2
$ cd binutils-051115
$ ./configure --target=m32c-elf --program-prefix='m32c-elf-'
$ make CFLAGS="-Wno-long-double"            # unter Linux: $ make
$ sudo make install                         # unter Linux: $ make install
Jetzt sollten die m32c-elf-binutils von überall aus im Terminal aufrufbar sein. Also z.b. "$ m32c-elf-ar". Ist das nicht der Fall, ist eventuell "/usr/local/bin" nicht im Pfad. Um das zu ändern, kann Folgendes in die Datei "~/.profile" eintragen werden:
export PATH="$PATH:/usr/local/bin"

Newlib und GCC

Newlib: http://sources.redhat.com/newlib/. Aktuelle CVS-Version holen:
cvs -z 9 -d :pserver:anoncvs@sources.redhat.com:/cvs/src login
{enter "anoncvs" as the password}
cvs -z 9 -d :pserver:anoncvs@sources.redhat.com:/cvs/src co newlib
GNU GCC: Aktuellen Snapshot von http://gcc.gnu.org runterladen.
$ tar xvjf gcc-core-4.1-20051112.tar.bz2

$ cp -r src/newlib gcc-4.1-20051112/
$ cp -r src/libgloss gcc-4.1-20051112/

$ mkdir m32c-elf-gcc
$ cd m32c-elf-gcc/
$ ../gcc-4.1-20051112/configure --target=m32c-elf \
                                --program-prefix='m32c-elf-' \
                                --enable-languages=c \
                                --with-gnu-as --with-gnu-ld \
                                --with-newlib
$ make
  # Mit Fehler abgebrochen:
  #   checking for C compiler default output file name...
  #   configure: error: C compiler cannot create executables
  # Aus config.log ging hervor, dass er das fertige libgloss nicht finden konnte. daher:
$ sudo make install-target-libgloss         # unter Linux: $ make install-target-libgloss
$ make
$ sudo make install                         # unter Linux: $ make install

Beispielprogramm

Hier ein kleines Programm zum Testen. Eine an Port1_0 des R8C angeschlossene LED blinkt. blink.2005-11-16.tar.gz
$ tar xvzf blink.2005-11-16.tar.gz
$ cd blink
$ make
Damit wird eine Datei blink.mot erstellt, die über das R8C Flashtool programmiert werden kann.

Zurück zur R8C-Seite