打补丁:
tar -xzf linux-2.4.19.tar.gz
cd linux-2.4.19/
bzcat ../patch-2.4.19-rmk7.bz2 | patch -p1
zcat ../diff-2.4.19-rmk7-pxa2.gz | patch -p1
配置内核并设置头文件依赖:
make ARCH=arm menuconfig
选择Processor Type 为 PXA210/250,
选择适当的开发平台
保存退出
make dep
复制header:
mkdir /usr/armtools/arm-linux/usr
mkdir /usr/armtools/arm-linux/usr/include
cp -rD linux-2.4.19/include/arm-asm/ /usr/armtools/arm-linux/target-root/usr/include/
cp -rD linux-2.4.19/include/linux/ /usr/armtools/arm-linux/target-root/usr/include/
在/toolschain/rootdir/arm-linux下建立了include目录
make dep 会要求arm-linux-gcc存在...
3 GCC-Core
GCC本身的编译分为两个部分. 首先是建立运行在Host平台上的一系列交叉编译工具arm-linux-gcc/g++/java..., 另一个是编译特定语言写成的应用程序时所需要的静态库(.a)和动态库(.so)文件. 例如c++的libstdc++.*和java的libjava.*. c本身的库文件glibc(libc.*)需要单独编译。
由于g++和java等编译器使用glibc,因此,在完全没有编译环境的情况下,只能够先编译gcc-core(gcc),然后利用生成的gcc编译glibc, 最后生成其他语言的编译器。
获取:
gcc-core-3.4.3.tar.bz2 GNU C Core &Compiler
编译时按照编译要求,最好将源代码和生成的OBJ分开放置:
tar -xjf gcc-core-3.4.3.tar.bz2
mkdir gccobj
cd gccobj