no way to compare when less than two revisions

Differences

This shows you the differences between two versions of the page.


cross_compile [2014/07/10 00:30] (current) – created Jan Stancek
Line 1: Line 1:
 +<code>
 +===== binutils
  
 +# cd build-binutils
 +# cat a.sh
 +BUILD=`gcc -v 2>&1 | grep Target: | sed 's/.*: //'`
 +PREFIX=/opt/toolchain-le
 +TARGET=ppc64le-redhat-linux-gnu
 +
 +../binutils-2.24.51/configure --target=$TARGET --prefix="$PREFIX" --disable-nls --disable-werror --with-sysroot="$PREFIX"
 +
 +sh a.sh
 +make
 +make install
 +
 +===== gcc core
 +
 +# cd build-gcc
 +# cat a.sh
 +BUILD=`gcc -v 2>&1 | grep Target: | sed 's/.*: //'`
 +PREFIX=/opt/toolchain-le
 +TARGET=ppc64le-redhat-linux-gnu
 +
 +#../gcc-4.8.2-20140409/configure --target=$TARGET --prefix="$PREFIX" --disable-nls \
 +#  --enable-languages=c,c++ --without-headers --with-sysroot="$PREFIX" --disable-multilib --with-gnu-as --with-gnu-ld
 +
 +../gcc-4.8.2-20140409/configure --target=$TARGET --prefix="$PREFIX" --disable-nls \
 +  --enable-languages=c --without-headers --with-sysroot="$PREFIX" --with-gnu-as --with-gnu-ld --disable-multilib
 +
 +echo 'lt_cv_shlibpath_overrides_runpath=no' > config.cache
 +echo 'gcc_cv_libc_provides_ssp=yes' >> config.cache
 +
 +sh a.sh
 +
 +make $J all-host gcc_cv_libc_provides_ssp=yes
 +make $J install-host gcc_cv_libc_provides_ssp=yes
 +
 +
 +===== kernel headers
 +# cat a.sh
 +BUILD=`gcc -v 2>&1 | grep Target: | sed 's/.*: //'`
 +PREFIX=/opt/toolchain-le
 +ROOTFS="$PREFIX"
 +TARGET=ppc64le-redhat-linux-gnu
 +KERNELARGS="ARCH=powerpc CROSS_COMPILE=${TARGET}-"
 +C=gcc
 +make CC=$C $KERNELARGS INSTALL_HDR_PATH=$ROOTFS/usr headers_install
 +
 +sh a.sh
 +
 +===== glibc headers
 +[root@ibm-p750e-01-lp3 build-glibc]# cat a.sh
 +BUILD=`gcc -v 2>&1 | grep Target: | sed 's/.*: //'`
 +PREFIX=/opt/toolchain-le
 +TARGET=ppc64le-redhat-linux-gnu
 +
 +export ARCH=powerpc
 +export PATH=$PATH:${PREFIX}/bin
 +export GCC_PATH=${PREFIX}/bin
 +export CROSS_COMPILE=${TARGET}-
 +
 +BUILD_CC=gcc CC=${GCC_PATH}/${CROSS_COMPILE}gcc ../glibc-2.19/configure --build $BUILD \
 +  --host $TARGET --target $TARGET --prefix=${PREFIX}/${TARGET} --disable-multilib \
 +  --disable-profile --without-cvs --with-elf --without-gd --disable-sanity-checks \
 +  --with-tls --with-__thread --enable-obsolete-rpc --enable-bind-now \
 +  --without-selinux --disable-selinux --with-glibc=../glibc-2.19
 +
 +make $J ARCH=powerpc cross-compiling=yes install-headers install_root=/opt/toolchain-le
 +make $J ARCH=powerpc cross-compiling=yes install-headers install_root=/
 +
 +mkdir -p /opt/toolchain-le/usr/include/gnu
 +touch /opt/toolchain-le/usr/include/gnu/stubs.h
 +mkdir -p /opt/toolchain-le/usr/include/bits
 +touch /opt/toolchain-le/usr/include/bits/stdio_lim.h
 +
 +===== gcc-libgcc half-broken
 +
 +make -k all-target-libgcc
 +make -i install-target-libgcc
 +
 +===== glibc
 +make
 +make install
 +
 +===== gcc 2pass
 +rm -rf /opt/toolchain-le/opt
 +cd /opt/toolchain-le
 +ln -s /opt opt
 +
 +make all-target-libgcc
 +make install-target-libgcc
 +
 +make
 +make install
 +
 +</code>
Back to top
cross_compile.txt · Last modified: 2014/07/10 00:30 by Jan Stancek
Sitemap Search: