From: WATANABE Hirofumi Date: 2000-06-27T18:30:32+09:00 Subject: [ruby-dev:10139] Re: cross-compile わたなべです. GOTO Kentaro writes: :cygwinをターゲットにしたcross-compile環境を用意する方法が書 :かれているところをご存知無いでしょうか?? Windowsにちゃんとし :たコンパイル環境を作る余裕が無いのでクロスで作りたいと思って :ます。 いつもやってる手順です. % mkdir -p common/libiberty これは ../common/libiberty という symlink が含まれてたりする のでしかたなく. % tar xfvz gcc-2.95.2-2-src.tar.gz % tar xfvz binutils-19990918-2-src.tar.gz % tar xfvz cygwin-1.1.2-src.tar.gz % cd cygwin-1.1.2 % tar xfv ../cygwin-src-20000625.tar.bz2 --use=bzip2 とりあえず最新にしとく. % ln -s ../gcc-2.95.2-2/{gcc,libio,libstdc++,texinfo} . % ln -s ../binutils-19990818-2/{bfd,binutils,gas,gprof,intl,ld,opcodes} . % rm -r libiberty % ln -s ../common/libiberty . 新しい libiberty だと dlltool で multiple defined になるの で古いほうを使う. % mkdir CROSS % cd CROSS % env CFLAGS=-Os CXXFLAGS=-Os ../configure \ --prefix=/usr/local/cygwin --target=i686-pc-cygwin \ --enable-languages=c,c++ objective-C とか f77 とか使わないので. -Os は最近の趣味. % make LIBGCC2_INCLUDES=-I../../winsup/cygwin/include LIBGCC2_INCLUDES の内容は間違っている. 一度インストールさ れると /usr/local/cygwin/i686-pc-cygwin/include が参照され るから気づきにくい. % sudo make install ftp://sourceware.cygnus.com/pub/cygwin/latest/cygwin/cygwin-1.1.2-src.tar.gz ftp://sourceware.cygnus.com/pub/cygwin/snapshots/cygwin-src-20000625.tar.bz2 ftp://sourceware.cygnus.com/pub/cygwin/latest/gcc/gcc-2.95.2-2-src.tar.gz ftp://sourceware.cygnus.com/pub/cygwin/latest/binutils/binutils-19990918-2-src.tar.gz あ, 今確認したら ftp://sourceware.cygnus.com/pub/cygwin/latest/binutils/binutils-20000625-src.tar.gz になってますね. 知らなかった. そっかこっちでちゃんと修正され てるのかも. もう一回やってみよう. -- わたなべひろふみ