紅帽linux5.5 linux 開發環境的搭建 2

原創作品:http://write.blog.csdn.net/postedit/7956383    

歡迎大家一起交流學習,知識在與分享。

希望結交一些志同道和之士 

QQ: 474530676

[email protected]



資料存放在根目錄下/up6410/


主機操作:


安裝編譯器:
[root@localhost ~]# mkdir /usr/local/arm


[root@localhost ~]# tar jxf /up6410/src/arm-linux-gcc-4.3.2.tar.bz2 -C /usr/local/arm


[root@localhost ~]# vim /.bash_profile

         PATH=/usr/local/arm/4.3.2/bin:$PATH


[root@localhost ~]# source  /.bash_profile 或 註銷
-----------------------------------------------------------------------------------------
3,解壓完成後將目錄加到環境變量裏
           [root@longguopeng ~] vim /etc/profile                      
            在最後加一行 
            export PATH=/usr/local/arm/4.3.2/bin:$PATH
        
        4,重新運行文件
           [root@longguopeng ~] source /etc/profile  //生效
           [root@longguopeng ~] . /etc/profile
        5,啓動完成就可以直接輸入arm-linux-gcc 命令編譯了
                編譯目錄就是在/nfsroot下


*******************************************************************************************************************
編譯u-boot:
cd /up6410/src
tar jxf u-boot-1.1.6.tar.bz2
cd u-boot-1.1.6


make up6410_sd_config
make
cp u-boot.bin /tftpboot/u-boot-sd.bin


make up6410_nand_config
make
cp u-boot.bin /tftpboot/my-boot-nand.bin
****************************************************************************************************************


編譯內核:
 第一步:
        解壓內核壓縮包:
[root@localhost ~]# cd /up6410/src
[root@localhost src]# tar jxf linux-2.6.28.tar.bz2
 
第二步:
        進到linux-2.6.28
[root@localhost src]# cd linux-2.6.28




第三步:
   1:告訴Makefile 哪些要編譯
             1) 在這個目錄下執行 make config ,
                這樣的話會有很多項要選擇,所以可以直接
                make defconfig    編譯默認選項
             2) 在這個目錄下執行 make menuconfig
                    進到內核定製對話框,最終保存之後會生成一個.config(這個文件是隱藏的)
             3)因爲在當前目錄下已經有一個up6410_config
             文件,所以可以暫時不去定製內核,直接將這個文件命名爲.config文件就可以了


[root@localhost linux-2.6.28]# cp up6410_config .config




[root@localhost linux-2.6.28]# make zImage
[root@localhost linux-2.6.28]# cp arch/arm/boot/zImage /tftpboot //將內核移到tftpboot






***********************************************************************************************************************************


製作根文件系統:


[root@localhost ~]# cd /up6410/src
[root@localhost src]# tar jxf busybox-1.19.4.tar.bz2    //不顯示進度條
[root@localhost src]# cd busybox-1.19.4


[root@localhost busybox-1.19.4] vim Makefile
---------------------------
:164   //直接跳轉到164行
164:CROSS_COMPILE ?= arm-linux-
190:ARCH ?= arm
---------------------------


[root@localhost busybox-1.19.4]# make defconfig //默認  配置     //或者  make menuconfig(顯示配置菜單)
[root@localhost busybox-1.19.4]# make busybox


[root@localhost busybox-1.19.4]# mkdir /nfsroot
[root@localhost busybox-1.19.4]# chmod 777 /nfsroot  //修改權限

[root@localhost busybox-1.19.4]# make install CONFIG_PREFIX=/nfsroot //安裝到相應的目錄
//也可以
[root@localhost busybox-1.19.4]# cp -rf _install/* /nfsroot/


[root@localhost busybox-1.19.4]# cd /nfsroot
[root@localhost nfsroot]# mkdir dev etc lib proc sys tmp mnt
 
[root@localhost nfsroot]# mkdir -p lib/modules/2.6.28.6 #for rmmod //模塊命令


[root@localhost nfsroot]# ll /dev/console  //查看
[root@localhost nfsroot]# mknod dev/console c 5 1 //先創建串口


 cp /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/lib/* lib///拷貝所有的
  只需這三個  ld-linux.so.3   libc.so.6     libm.so.6   
[root@localhost nfsroot] cp /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/lib/ld-linux.so.3 lib/
[root@localhost nfsroot] cp /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/lib/libc.so.6 lib/
[root@localhost nfsroot] cp /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/lib/libm.so.6  lib/


[root@localhost nfsroot] vim etc/fstab
------------------------------------
proc    /proc   proc    defaults        0       0
sysfs   /sys    sysfs   defaults        0       0
tmpfs   /tmp    tmpfs   defaults        0       0
tmpfs   /dev    tmpfs   defaults        0       0
------------------------------------
root@localhost nfsroot] mkdir etc/init.d



root@localhost nfsroot] vim etc/init.d/rcS


----------------------------------
#!/bin/sh
mount -a
echo "XXXXXXXXXXXXXXX"
echo "XXXXXXXXXXXXXXX"
echo "XXXXXlongXXXXX"
echo "XXXXXXXXXXXXXXX"
echo "XXXXXXXXXXXXXXX"
echo "/sbin/mdev" > /proc/sys/kernel/hotplug
mdev -s
----------------------------------




root@localhost nfsroot] chmod +x etc/init.d/rcS


root@localhost nfsroot] tar cf ../mini_rootfs.tar *


************************************************************************************************************************************






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章