DebianでH8用(h8300-hms)のGCCをビルドする

DebianでH8用のGCCをビルドしてみました。
H8用のGCCにはh8300-hms(coffと同じ)とh8300-elfがあり,バイナリフォーマットが違うようです。どう違うのかは調べていません。elfのほうが新しいようです。
ここではhms用にビルドしてみます。
ただしH8実機で動作確認をしていません。

前提

ビルドするもの

メモ
  • binutilsは2.16.1までがh8300-hmsでビルドできました。
    2.17は ../../bfd/archive.c:669:16: error: variable 'fail' set but not used [-Werror=unused-but-set-variable] と言われました。
    2.18からは2.23.2までは ../../bfd/archive.c:669:16: error: variable 'fail' set but not used [-Werror=unused-but-set-variable] と言われました。
    2.24からはThis target is no longer supported in gas と言われました。
    h8300-elfでは2.24でもビルドできました。
  • GCC 4.4.7はエラーになります。4.5からはhmsのH8がサポートされなくなりました(H8/300開発環境の構築 [soramimi.jp])。

ビルドに必要なパッケージをインストールする

$ sudo apt-get install build-essential libgmp-dev libmpfr-dev libmpc-dev bison flex texinfo

ソースをダウンロードして展開する

$ mkdir ~/src
$ cd ~/src
$ wget http://ftp.jaist.ac.jp/pub/GNU/binutils/binutils-2.16.1a.tar.bz2
$ wget http://ftp.jaist.ac.jp/pub/GNU/gcc/gcc-4.4.6/gcc-4.4.6.tar.bz2
$ wget ftp://sourceware.org/pub/newlib/newlib-2.1.0.tar.gz
$ wget http://ftp.jaist.ac.jp/pub/GNU/gdb/gdb-7.12.tar.xz
$ tar jxf binutils-2.16.1a.tar.bz2
$ tar jxf gcc-4.4.6.tar.bz2
$ tar zxf newlib-2.1.0.tar.gz
$ tar Jxf gdb-7.12.tar.xz
メモ
  • ダウンロードするディレクトリは~/srcにしました。変える場合は読み替えてください。

パスを通しておく

$ export PATH=/usr/local/h8300-hms/bin:$PATH

binutilsをインストールする

$ mkdir ~/src/binutils
$ cd ~/src/binutils
$ ../binutils-2.16.1/configure --prefix=/usr/local/h8300-hms --target=h8300-hms --disable-nls
$ make -j2
# make install MAKEINFO=true
メモ
  • configureのオプション:
    --disable-nls : NLS(Native Language Support)を無効にする。NLSを有効にしておくとエラーメッセージが日本語で出るそうです。
  • make installするときにMAKEINFO=trueをつけておかないと,texinfoのビルドでエラーになります(binutils-2.23.2 tarball doesn't build without makeinfo)。

gccをインストールする

$ mkdir ~/src/gcc
$ cd ~/src/gcc
$ ../gcc-4.4.6/configure --prefix=/usr/local/h8300-hms --target=h8300-hms --with-newlib --enable-languages=c,c++ --disable-nls --disable-libssp --disable-libstdc__-v3 --enable-obsolete
$ make -j2 MAKEINFO=true
$ sudo bash
# export PATH=/usr/local/h8300-hms/bin:$PATH
# make install MAKEINFO=true
# exit
メモ

newlibをインストールする

$ mkdir ~/src/newlib
$ cd ~/src/newlib
$ ../newlib-2.1.0/configure --prefix=/usr/local/h8300-hms --target=h8300-hms
$ make -j2
$ sudo bash
# export PATH=/usr/local/h8300-hms/bin:$PATH
# make install MAKEINFO=true
# exit

gdbをインストールする

$ mkdir ~/src/gdb
$ cd ~/src/gdb
$ ../gdb-7.12/configure --prefix=/usr/local/h8300-hms --target=h8300-hms --disable-nls
$ make -j2
$ sudo bash
# export PATH=/usr/local/h8300-hms/bin:$PATH
# make install
# exit

動作確認

// test.cpp
#include <stdio.h>
#include <stdint.h>

int main() {
  printf("size of char      = %d\n", sizeof(char));
  printf("size of short     = %d\n", sizeof(short));
  printf("size of int       = %d\n", sizeof(int));
  printf("size of long      = %d\n", sizeof(long));
  printf("size of long long = %d\n", sizeof(long long));
  printf("size of pointer   = %d\n", sizeof(void*));
  printf("size of int8_t    = %d\n", sizeof(int8_t));
  printf("size of uint8_t   = %d\n", sizeof(uint8_t));
  printf("size of int16_t   = %d\n", sizeof(int16_t));
  printf("size of uint6_t   = %d\n", sizeof(uint16_t));
  printf("size of int32_t   = %d\n", sizeof(int32_t));
  printf("size of uint32_t  = %d\n", sizeof(uint32_t));
  printf("size of int64_t   = %d\n", sizeof(int64_t));
  printf("size of uint64_t  = %d\n", sizeof(uint64_t));
  return 0;
}

のようなファイルを作っておき(H8300用クロスコンパイラの作成 - syohex’s diary [hatenablog.com]),

$ export PATH=/usr/local/h8300-hms/bin:$PATH
$ h8300-hms-gcc test.cpp
$ h8300-hms-run a.out
size of char      = 1
size of short     = 2
size of int       = 2
size of long      = 4
size of long long = 8
size of pointer   = 2
size of int8_t    = 1
size of uint8_t   = 1
size of int16_t   = 2
size of uint6_t   = 2
size of int32_t   = 4
size of uint32_t  = 4
size of int64_t   = 8
size of uint64_t  = 8

アンインストール

/usr/local/h8300-hmsを削除してください。

$ sudo rm -r /usr/local/h8300-hms

おまけ:インストールされるファイル一覧

binutils
/usr/local/h8300-hms/man/man1/h8300-hms-nm.1
/usr/local/h8300-hms/man/man1/h8300-hms-objdump.1
/usr/local/h8300-hms/man/man1/h8300-hms-c++filt.1
/usr/local/h8300-hms/man/man1/h8300-hms-addr2line.1
/usr/local/h8300-hms/man/man1/h8300-hms-dlltool.1
/usr/local/h8300-hms/man/man1/h8300-hms-objcopy.1
/usr/local/h8300-hms/man/man1/h8300-hms-readelf.1
/usr/local/h8300-hms/man/man1/h8300-hms-ld.1
/usr/local/h8300-hms/man/man1/h8300-hms-as.1
/usr/local/h8300-hms/man/man1/h8300-hms-size.1
/usr/local/h8300-hms/man/man1/h8300-hms-windres.1
/usr/local/h8300-hms/man/man1/h8300-hms-strip.1
/usr/local/h8300-hms/man/man1/h8300-hms-strings.1
/usr/local/h8300-hms/man/man1/h8300-hms-ar.1
/usr/local/h8300-hms/man/man1/h8300-hms-nlmconv.1
/usr/local/h8300-hms/man/man1/h8300-hms-ranlib.1
/usr/local/h8300-hms/bin/h8300-hms-c++filt
/usr/local/h8300-hms/bin/h8300-hms-ar
/usr/local/h8300-hms/bin/h8300-hms-objcopy
/usr/local/h8300-hms/bin/h8300-hms-ranlib
/usr/local/h8300-hms/bin/h8300-hms-readelf
/usr/local/h8300-hms/bin/h8300-hms-srconv
/usr/local/h8300-hms/bin/h8300-hms-strip
/usr/local/h8300-hms/bin/h8300-hms-nm
/usr/local/h8300-hms/bin/h8300-hms-size
/usr/local/h8300-hms/bin/h8300-hms-sysdump
/usr/local/h8300-hms/bin/h8300-hms-as
/usr/local/h8300-hms/bin/h8300-hms-addr2line
/usr/local/h8300-hms/bin/h8300-hms-coffdump
/usr/local/h8300-hms/bin/h8300-hms-ld
/usr/local/h8300-hms/bin/h8300-hms-objdump
/usr/local/h8300-hms/bin/h8300-hms-strings
/usr/local/h8300-hms/h8300-hms/bin/ar
/usr/local/h8300-hms/h8300-hms/bin/objdump
/usr/local/h8300-hms/h8300-hms/bin/nm
/usr/local/h8300-hms/h8300-hms/bin/ranlib
/usr/local/h8300-hms/h8300-hms/bin/as
/usr/local/h8300-hms/h8300-hms/bin/strip
/usr/local/h8300-hms/h8300-hms/bin/ld
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300h.xn
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sxn.xn
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300hn.xbn
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sx.xn
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300.x
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sn.xbn
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sn.xu
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300s.xr
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sxn.xbn
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300s.xn
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300hn.xn
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300s.x
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300h.xr
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sxn.x
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300hn.x
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sn.xr
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sx.xr
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300.xr
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sxn.xu
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300h.xu
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sx.x
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300hn.xu
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300h.x
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300s.xbn
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sx.xbn
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sx.xu
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sxn.xr
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sn.xn
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300.xu
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300hn.xr
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300.xn
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300sn.x
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300.xbn
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300s.xu
/usr/local/h8300-hms/h8300-hms/lib/ldscripts/h8300h.xbn
/usr/local/h8300-hms/info/bfd.info
/usr/local/h8300-hms/info/as.info-2
/usr/local/h8300-hms/info/as.info
/usr/local/h8300-hms/info/dir
/usr/local/h8300-hms/info/standards.info
/usr/local/h8300-hms/info/as.info-1
/usr/local/h8300-hms/info/as.info-3
/usr/local/h8300-hms/info/bfd.info-1
/usr/local/h8300-hms/info/bfd.info-2
/usr/local/h8300-hms/info/configure.info
/usr/local/h8300-hms/lib/libiberty.a
gcc
/usr/local/h8300-hms/man/man7/gpl.7
/usr/local/h8300-hms/man/man7/fsf-funding.7
/usr/local/h8300-hms/man/man7/gfdl.7
/usr/local/h8300-hms/man/man1/h8300-hms-g++.1
/usr/local/h8300-hms/man/man1/h8300-hms-gcov.1
/usr/local/h8300-hms/man/man1/h8300-hms-cpp.1
/usr/local/h8300-hms/man/man1/h8300-hms-gcc.1
/usr/local/h8300-hms/libexec/gcc/h8300-hms/4.4.6/collect2
/usr/local/h8300-hms/libexec/gcc/h8300-hms/4.4.6/cc1
/usr/local/h8300-hms/libexec/gcc/h8300-hms/4.4.6/cc1plus
/usr/local/h8300-hms/libexec/gcc/h8300-hms/4.4.6/install-tools/mkinstalldirs
/usr/local/h8300-hms/libexec/gcc/h8300-hms/4.4.6/install-tools/fixincl
/usr/local/h8300-hms/libexec/gcc/h8300-hms/4.4.6/install-tools/fixinc.sh
/usr/local/h8300-hms/libexec/gcc/h8300-hms/4.4.6/install-tools/mkheaders
/usr/local/h8300-hms/bin/h8300-hms-c++
/usr/local/h8300-hms/bin/h8300-hms-cpp
/usr/local/h8300-hms/bin/h8300-hms-g++
/usr/local/h8300-hms/bin/h8300-hms-gccbug
/usr/local/h8300-hms/bin/h8300-hms-gcov
/usr/local/h8300-hms/bin/h8300-hms-gcc-4.4.6
/usr/local/h8300-hms/bin/h8300-hms-gcc
/usr/local/h8300-hms/h8300-hms/bin/gcc
/usr/local/h8300-hms/h8300-hms/bin/g++
/usr/local/h8300-hms/h8300-hms/bin/c++
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300h/normal/libgcov.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300h/normal/int32/libgcov.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300h/normal/int32/libgcc.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300h/normal/libgcc.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300h/libgcov.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300h/int32/libgcov.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300h/int32/libgcc.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300h/libgcc.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/libgcov.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/include-fixed/limits.h
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/include-fixed/README
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/include-fixed/syslimits.h
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/libgcc.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/install-tools/mkheaders.conf
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/install-tools/macro_list
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/install-tools/include/limits.h
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/install-tools/include/README
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/install-tools/fixinc_list
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/install-tools/gsyslimits.h
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8sx/normal/libgcov.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8sx/normal/int32/libgcov.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8sx/normal/int32/libgcc.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8sx/normal/libgcc.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8sx/libgcov.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8sx/int32/libgcov.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8sx/int32/libgcc.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8sx/libgcc.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/include/stddef.h
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/include/stdfix.h
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/include/stdarg.h
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/include/iso646.h
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/include/varargs.h
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/include/unwind.h
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/include/stdbool.h
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/include/tgmath.h
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/include/float.h
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300s/normal/libgcov.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300s/normal/int32/libgcov.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300s/normal/int32/libgcc.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300s/normal/libgcc.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300s/libgcov.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300s/int32/libgcov.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300s/int32/libgcc.a
/usr/local/h8300-hms/lib/gcc/h8300-hms/4.4.6/h8300s/libgcc.a
/usr/local/h8300-hms/lib/libiberty.a
newlib
/usr/local/h8300-hms/h8300-hms/lib/libc.a
/usr/local/h8300-hms/h8300-hms/lib/h8300h/libc.a
/usr/local/h8300-hms/h8300-hms/lib/h8300h/normal/libc.a
/usr/local/h8300-hms/h8300-hms/lib/h8300h/normal/int32/libc.a
/usr/local/h8300-hms/h8300-hms/lib/h8300h/normal/int32/crt0.o
/usr/local/h8300-hms/h8300-hms/lib/h8300h/normal/int32/libg.a
/usr/local/h8300-hms/h8300-hms/lib/h8300h/normal/int32/libm.a
/usr/local/h8300-hms/h8300-hms/lib/h8300h/normal/crt0.o
/usr/local/h8300-hms/h8300-hms/lib/h8300h/normal/libg.a
/usr/local/h8300-hms/h8300-hms/lib/h8300h/normal/libm.a
/usr/local/h8300-hms/h8300-hms/lib/h8300h/int32/libc.a
/usr/local/h8300-hms/h8300-hms/lib/h8300h/int32/crt0.o
/usr/local/h8300-hms/h8300-hms/lib/h8300h/int32/libg.a
/usr/local/h8300-hms/h8300-hms/lib/h8300h/int32/libm.a
/usr/local/h8300-hms/h8300-hms/lib/h8300h/crt0.o
/usr/local/h8300-hms/h8300-hms/lib/h8300h/libg.a
/usr/local/h8300-hms/h8300-hms/lib/h8300h/libm.a
/usr/local/h8300-hms/h8300-hms/lib/crt0.o
/usr/local/h8300-hms/h8300-hms/lib/libg.a
/usr/local/h8300-hms/h8300-hms/lib/libm.a
/usr/local/h8300-hms/h8300-hms/lib/h8sx/libc.a
/usr/local/h8300-hms/h8300-hms/lib/h8sx/normal/libc.a
/usr/local/h8300-hms/h8300-hms/lib/h8sx/normal/int32/libc.a
/usr/local/h8300-hms/h8300-hms/lib/h8sx/normal/int32/crt0.o
/usr/local/h8300-hms/h8300-hms/lib/h8sx/normal/int32/libg.a
/usr/local/h8300-hms/h8300-hms/lib/h8sx/normal/int32/libm.a
/usr/local/h8300-hms/h8300-hms/lib/h8sx/normal/crt0.o
/usr/local/h8300-hms/h8300-hms/lib/h8sx/normal/libg.a
/usr/local/h8300-hms/h8300-hms/lib/h8sx/normal/libm.a
/usr/local/h8300-hms/h8300-hms/lib/h8sx/int32/libc.a
/usr/local/h8300-hms/h8300-hms/lib/h8sx/int32/crt0.o
/usr/local/h8300-hms/h8300-hms/lib/h8sx/int32/libg.a
/usr/local/h8300-hms/h8300-hms/lib/h8sx/int32/libm.a
/usr/local/h8300-hms/h8300-hms/lib/h8sx/crt0.o
/usr/local/h8300-hms/h8300-hms/lib/h8sx/libg.a
/usr/local/h8300-hms/h8300-hms/lib/h8sx/libm.a
/usr/local/h8300-hms/h8300-hms/lib/h8300s/libc.a
/usr/local/h8300-hms/h8300-hms/lib/h8300s/normal/libc.a
/usr/local/h8300-hms/h8300-hms/lib/h8300s/normal/int32/libc.a
/usr/local/h8300-hms/h8300-hms/lib/h8300s/normal/int32/crt0.o
/usr/local/h8300-hms/h8300-hms/lib/h8300s/normal/int32/libg.a
/usr/local/h8300-hms/h8300-hms/lib/h8300s/normal/int32/libm.a
/usr/local/h8300-hms/h8300-hms/lib/h8300s/normal/crt0.o
/usr/local/h8300-hms/h8300-hms/lib/h8300s/normal/libg.a
/usr/local/h8300-hms/h8300-hms/lib/h8300s/normal/libm.a
/usr/local/h8300-hms/h8300-hms/lib/h8300s/int32/libc.a
/usr/local/h8300-hms/h8300-hms/lib/h8300s/int32/crt0.o
/usr/local/h8300-hms/h8300-hms/lib/h8300s/int32/libg.a
/usr/local/h8300-hms/h8300-hms/lib/h8300s/int32/libm.a
/usr/local/h8300-hms/h8300-hms/lib/h8300s/crt0.o
/usr/local/h8300-hms/h8300-hms/lib/h8300s/libg.a
/usr/local/h8300-hms/h8300-hms/lib/h8300s/libm.a
/usr/local/h8300-hms/h8300-hms/include/math.h
/usr/local/h8300-hms/h8300-hms/include/tar.h
/usr/local/h8300-hms/h8300-hms/include/dirent.h
/usr/local/h8300-hms/h8300-hms/include/time.h
/usr/local/h8300-hms/h8300-hms/include/signal.h
/usr/local/h8300-hms/h8300-hms/include/glob.h
/usr/local/h8300-hms/h8300-hms/include/sys/_default_fcntl.h
/usr/local/h8300-hms/h8300-hms/include/sys/dirent.h
/usr/local/h8300-hms/h8300-hms/include/sys/time.h
/usr/local/h8300-hms/h8300-hms/include/sys/resource.h
/usr/local/h8300-hms/h8300-hms/include/sys/signal.h
/usr/local/h8300-hms/h8300-hms/include/sys/lock.h
/usr/local/h8300-hms/h8300-hms/include/sys/utime.h
/usr/local/h8300-hms/h8300-hms/include/sys/reent.h
/usr/local/h8300-hms/h8300-hms/include/sys/cdefs.h
/usr/local/h8300-hms/h8300-hms/include/sys/fcntl.h
/usr/local/h8300-hms/h8300-hms/include/sys/config.h
/usr/local/h8300-hms/h8300-hms/include/sys/errno.h
/usr/local/h8300-hms/h8300-hms/include/sys/file.h
/usr/local/h8300-hms/h8300-hms/include/sys/stdio.h
/usr/local/h8300-hms/h8300-hms/include/sys/stat.h
/usr/local/h8300-hms/h8300-hms/include/sys/unistd.h
/usr/local/h8300-hms/h8300-hms/include/sys/wait.h
/usr/local/h8300-hms/h8300-hms/include/sys/dir.h
/usr/local/h8300-hms/h8300-hms/include/sys/string.h
/usr/local/h8300-hms/h8300-hms/include/sys/iconvnls.h
/usr/local/h8300-hms/h8300-hms/include/sys/queue.h
/usr/local/h8300-hms/h8300-hms/include/sys/features.h
/usr/local/h8300-hms/h8300-hms/include/sys/syscall.h
/usr/local/h8300-hms/h8300-hms/include/sys/sched.h
/usr/local/h8300-hms/h8300-hms/include/sys/types.h
/usr/local/h8300-hms/h8300-hms/include/sys/param.h
/usr/local/h8300-hms/h8300-hms/include/sys/timeb.h
/usr/local/h8300-hms/h8300-hms/include/sys/syslimits.h
/usr/local/h8300-hms/h8300-hms/include/sys/times.h
/usr/local/h8300-hms/h8300-hms/include/sys/custom_file.h
/usr/local/h8300-hms/h8300-hms/include/sys/_types.h
/usr/local/h8300-hms/h8300-hms/include/machine/endian.h
/usr/local/h8300-hms/h8300-hms/include/machine/time.h
/usr/local/h8300-hms/h8300-hms/include/machine/ansi.h
/usr/local/h8300-hms/h8300-hms/include/machine/setjmp.h
/usr/local/h8300-hms/h8300-hms/include/machine/stdlib.h
/usr/local/h8300-hms/h8300-hms/include/machine/_default_types.h
/usr/local/h8300-hms/h8300-hms/include/machine/ieeefp.h
/usr/local/h8300-hms/h8300-hms/include/machine/fastmath.h
/usr/local/h8300-hms/h8300-hms/include/machine/setjmp-dj.h
/usr/local/h8300-hms/h8300-hms/include/machine/termios.h
/usr/local/h8300-hms/h8300-hms/include/machine/types.h
/usr/local/h8300-hms/h8300-hms/include/machine/param.h
/usr/local/h8300-hms/h8300-hms/include/machine/malloc.h
/usr/local/h8300-hms/h8300-hms/include/machine/_types.h
/usr/local/h8300-hms/h8300-hms/include/stdint.h
/usr/local/h8300-hms/h8300-hms/include/utime.h
/usr/local/h8300-hms/h8300-hms/include/setjmp.h
/usr/local/h8300-hms/h8300-hms/include/reent.h
/usr/local/h8300-hms/h8300-hms/include/paths.h
/usr/local/h8300-hms/h8300-hms/include/regdef.h
/usr/local/h8300-hms/h8300-hms/include/fcntl.h
/usr/local/h8300-hms/h8300-hms/include/getopt.h
/usr/local/h8300-hms/h8300-hms/include/errno.h
/usr/local/h8300-hms/h8300-hms/include/stdlib.h
/usr/local/h8300-hms/h8300-hms/include/langinfo.h
/usr/local/h8300-hms/h8300-hms/include/ctype.h
/usr/local/h8300-hms/h8300-hms/include/_ansi.h
/usr/local/h8300-hms/h8300-hms/include/iconv.h
/usr/local/h8300-hms/h8300-hms/include/stdio.h
/usr/local/h8300-hms/h8300-hms/include/pwd.h
/usr/local/h8300-hms/h8300-hms/include/libgen.h
/usr/local/h8300-hms/h8300-hms/include/ar.h
/usr/local/h8300-hms/h8300-hms/include/_syslist.h
/usr/local/h8300-hms/h8300-hms/include/unistd.h
/usr/local/h8300-hms/h8300-hms/include/envz.h
/usr/local/h8300-hms/h8300-hms/include/ieeefp.h
/usr/local/h8300-hms/h8300-hms/include/fastmath.h
/usr/local/h8300-hms/h8300-hms/include/locale.h
/usr/local/h8300-hms/h8300-hms/include/fnmatch.h
/usr/local/h8300-hms/h8300-hms/include/limits.h
/usr/local/h8300-hms/h8300-hms/include/wordexp.h
/usr/local/h8300-hms/h8300-hms/include/complex.h
/usr/local/h8300-hms/h8300-hms/include/string.h
/usr/local/h8300-hms/h8300-hms/include/pthread.h
/usr/local/h8300-hms/h8300-hms/include/wctype.h
/usr/local/h8300-hms/h8300-hms/include/assert.h
/usr/local/h8300-hms/h8300-hms/include/inttypes.h
/usr/local/h8300-hms/h8300-hms/include/tgmath.h
/usr/local/h8300-hms/h8300-hms/include/argz.h
/usr/local/h8300-hms/h8300-hms/include/strings.h
/usr/local/h8300-hms/h8300-hms/include/grp.h
/usr/local/h8300-hms/h8300-hms/include/search.h
/usr/local/h8300-hms/h8300-hms/include/stdio_ext.h
/usr/local/h8300-hms/h8300-hms/include/termios.h
/usr/local/h8300-hms/h8300-hms/include/sched.h
/usr/local/h8300-hms/h8300-hms/include/regex.h
/usr/local/h8300-hms/h8300-hms/include/wchar.h
/usr/local/h8300-hms/h8300-hms/include/envlock.h
/usr/local/h8300-hms/h8300-hms/include/newlib.h
/usr/local/h8300-hms/h8300-hms/include/alloca.h
/usr/local/h8300-hms/h8300-hms/include/malloc.h
/usr/local/h8300-hms/h8300-hms/include/utmp.h
/usr/local/h8300-hms/h8300-hms/include/unctrl.h
gdb
/usr/local/h8300-hms/share/man/man1/h8300-hms-gdb.1
/usr/local/h8300-hms/share/man/man1/h8300-hms-gdbserver.1
/usr/local/h8300-hms/share/man/man5/h8300-hms-gdbinit.5
/usr/local/h8300-hms/share/info/bfd.info
/usr/local/h8300-hms/share/info/stabs.info
/usr/local/h8300-hms/share/info/dir
/usr/local/h8300-hms/share/info/gdb.info
/usr/local/h8300-hms/share/info/annotate.info
/usr/local/h8300-hms/share/gdb/python/gdb/xmethod.py
/usr/local/h8300-hms/share/gdb/python/gdb/FrameIterator.py
/usr/local/h8300-hms/share/gdb/python/gdb/printer/bound_registers.py
/usr/local/h8300-hms/share/gdb/python/gdb/printer/__init__.py
/usr/local/h8300-hms/share/gdb/python/gdb/frames.py
/usr/local/h8300-hms/share/gdb/python/gdb/__init__.py
/usr/local/h8300-hms/share/gdb/python/gdb/function/as_string.py
/usr/local/h8300-hms/share/gdb/python/gdb/function/strfns.py
/usr/local/h8300-hms/share/gdb/python/gdb/function/__init__.py
/usr/local/h8300-hms/share/gdb/python/gdb/function/caller_is.py
/usr/local/h8300-hms/share/gdb/python/gdb/types.py
/usr/local/h8300-hms/share/gdb/python/gdb/prompt.py
/usr/local/h8300-hms/share/gdb/python/gdb/printing.py
/usr/local/h8300-hms/share/gdb/python/gdb/command/pretty_printers.py
/usr/local/h8300-hms/share/gdb/python/gdb/command/explore.py
/usr/local/h8300-hms/share/gdb/python/gdb/command/unwinders.py
/usr/local/h8300-hms/share/gdb/python/gdb/command/xmethods.py
/usr/local/h8300-hms/share/gdb/python/gdb/command/frame_filters.py
/usr/local/h8300-hms/share/gdb/python/gdb/command/__init__.py
/usr/local/h8300-hms/share/gdb/python/gdb/command/type_printers.py
/usr/local/h8300-hms/share/gdb/python/gdb/command/prompt.py
/usr/local/h8300-hms/share/gdb/python/gdb/FrameDecorator.py
/usr/local/h8300-hms/share/gdb/python/gdb/unwinder.py
/usr/local/h8300-hms/share/gdb/syscalls/arm-linux.xml
/usr/local/h8300-hms/share/gdb/syscalls/i386-linux.xml
/usr/local/h8300-hms/share/gdb/syscalls/ppc64-linux.xml
/usr/local/h8300-hms/share/gdb/syscalls/freebsd.xml
/usr/local/h8300-hms/share/gdb/syscalls/s390-linux.xml
/usr/local/h8300-hms/share/gdb/syscalls/ppc-linux.xml
/usr/local/h8300-hms/share/gdb/syscalls/amd64-linux.xml
/usr/local/h8300-hms/share/gdb/syscalls/sparc-linux.xml
/usr/local/h8300-hms/share/gdb/syscalls/mips-n64-linux.xml
/usr/local/h8300-hms/share/gdb/syscalls/mips-n32-linux.xml
/usr/local/h8300-hms/share/gdb/syscalls/mips-o32-linux.xml
/usr/local/h8300-hms/share/gdb/syscalls/gdb-syscalls.dtd
/usr/local/h8300-hms/share/gdb/syscalls/s390x-linux.xml
/usr/local/h8300-hms/share/gdb/syscalls/aarch64-linux.xml
/usr/local/h8300-hms/share/gdb/syscalls/sparc64-linux.xml
/usr/local/h8300-hms/share/gdb/system-gdbinit/wrs-linux.py
/usr/local/h8300-hms/share/gdb/system-gdbinit/elinos.py
/usr/local/h8300-hms/bin/h8300-hms-gdb
/usr/local/h8300-hms/bin/h8300-hms-run
/usr/local/h8300-hms/lib/libh8300-hms-sim.a
/usr/local/h8300-hms/include/gdb/jit-reader.h

おまけ:実績のありそうなバージョン

レガシーToolchains | GNU Tools [gcc-renesas.com], H8 レガシーToolchains | GNU Tools [gcc-renesas.com], GNUSH news | Page 2 | SegaXtreme [segaxtreme.net], GNUSH news | Page 4 | SegaXtreme [segaxtreme.net]
この辺から想像すると次のようです。

  • COFFの最終版が2006年リリースのGNUH8 v06.01で,その内容はgcc-4.0.2, binutils-2.16.1, newlib-1.12.0
  • GNUH8 v06.02からはCOFFが削除された
  • ELFの最終版が2012年リリースのGNUH8 v12.02で,その内容はGCC 4.7.0, Binutils 2.22, Newlib 1.20.0, GDB 7.4.1