Show me the money
分类: LINUX
2010-11-12 17:36:55
1. 下载glibc和glibc-ports
wget wget |
2. 解压源码包
tar xfj glibc-2.9.tar.bz2 tar xfj glibc-ports/2.9.tar.bz2 cp -rf glibc-ports-2.9/sysdeps/* glibc-2.9/sysdeps |
3. 打补丁
patch -p0 < ../glibc-2.9.patch |
4. 建立编译目录;glibc建议编译目录和源码目录分开
mkdir build |
5. 下载linux kernel源码
wget |
6. 为linux kernel生成目标平台的default config
cd linux-2.6.27 && env ARCH=mips make defconfig |
7. 生成config.cache
echo ' libc_cv_forced_unwind=yes libc_cv_c_cleanup=yes libc_cv_mips_tls=yes libc_cv_gnu99_inline=yes ' > config.cache |
8. 配置glibc(CROSS_COMPILE为交叉编译器的前缀)
BUILD_CC=gcc \ CC="${CROSS_COMPILE}gcc -EL" \ AR=${CROSS_COMPILE}ar \ RANLIB=${CROSS_COMPILE}ranlib \ ../glibc-2.9/configure \ --build=i686-linux-gnu \ --host=mips-gnu \ --without-fp\ --without-selinux \ --without-cvs \ --without-gd \ --with-tls \ --with-_threads \ --enable-add-ons \ --enable-nptl \ --enable-check-abi \ --disable-profile \ --with-headers=$LINUX/include \ --prefix=$PREFIX \ --cache-file=config.cache |
9. 编译
make -C build |
10. 安装
make -C build install install-headers |
11. 安装linux相关的头文件
cp -rf $LINUX/include/asm-mips $PREFIX/include/asm && cp -rf $LINUX/include/asm-generic $LINUX/include/linux $PREFIX/include/ |
12. 修正libpthread.so和libc.so
sed -i "s@$PREFIX@@g" $PREFIX/lib/libpthread.so $PREFIX/lib/libc.so |