-
Notifications
You must be signed in to change notification settings - Fork 31
gccの構築
Ryota Shioya edited this page Mar 24, 2022
·
2 revisions
- gmp,mpfr,mpc(4.5.1以降で必要) の導入
- システムに必要なバージョンが導入されている場合,不要
- gcc の構築
PREFIX=~/opt/gcc/gcc-4.4.0-x64
export PATH=${PREFIX}/bin:${PATH}
export PREFIX_HOST_LIB=${PREFIX}/host-lib
../configure \
--prefix=${PREFIX_HOST_LIB}
make
make install
../configure \
--prefix=${PREFIX_HOST_LIB} \
--with-gmp=${PREFIX_HOST_LIB}
make
make install
../configure \
--prefix=${PREFIX_HOST_LIB} \
--with-gmp=${PREFIX_HOST_LIB} \
--with-mpfr=${PREFIX_HOST_LIB}
make
make install
../configure \
--prefix=${PREFIX} \
--enable-languages=c,c++,fortran \
--with-gmp-include=${PREFIX_HOST_LIB}/include \
--with-gmp-lib=${PREFIX_HOST_LIB}/lib \
--with-mpfr-include=${PREFIX_HOST_LIB}/include \
--with-mpfr-lib=${PREFIX_HOST_LIB}/lib
--with-mpc-include=${PREFIX_HOST_LIB}/include \
--with-mpc-lib=${PREFIX_HOST_LIB}/lib
make
make install
- gmp,mpfr を独自に導入した場合,GCC の構築中に共有ライブラリのロードに失敗する場合がある
- --with-gmp-lib/--with-mpfr-lib が完全には機能していない模様
- ${PREFIX_HOST_LIB}/lib 以下のgmp,mpfr 関連の.so を削除してからGCCの構築を行うとよい
- こうすることで,強制的に静的リンクされる
- LDFLAGS 等に-staticを指定しただけでは,GCC構築用のGCC のコンパイルには使用されないため,うまくいかない
上記の手順で構築可能なことを確認