OK6410-A開發板LINUX3.0.1配置(嵌入式開發)
OK6410-A開發板LINUX3.0.1配置
一、安裝ubuntu20.04
1.虛擬機器聯網
2.安裝vm-tools
3.換源
二、安裝交叉編譯器
1.將 arm-linux-gcc-4.3.2.tgz 檔案拷貝到 Ubuntu 的/forlinx 目錄下
2.將交叉編譯器解壓到/usr/local/arm
#cd /forlinx (進入/forlinx 目錄)
#mkdir /usr/local/arm (建立目錄,若目錄已存在會提示錯誤,跳過即可)
#tar zxvf arm-linux-gcc-4.3.2.tgz -C /
3.把交叉編譯器路徑新增到系統環境變數中
tips:安裝前,建議獲得管理員許可權,並進行以下命令
sudo apt-get update
sudo apt-get upgrade
在終端中執行以下命令,找到配置檔案
gedit /etc/profile
新增以下四行到該檔案中:
export PATH=/usr/local/arm/4.3.2/bin:$PATH
export TOOLCHAIN=/usr/local/arm/4.3.2
export TB_CC_PREFIX=arm-linux-
export PKG_CONFIG_PREFIX=$TOOLCHAIN/arm-none-linux-gnueabi
儲存,退出。
因為是64位系統沒有32位的指令庫,可以安裝一下
安裝命令:
sudo apt-get install libc6-i386
也有另外解決方法,可以直接安裝64位的交叉編譯器,64位能向下相容32位
我這裡選擇的是arm-linux-gcc-4.6.4
同理,新增以下2行到上述檔案中
export PATH=$PATH:/usr/local/arm/gcc-4.6.4/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/arm/gcc-4.6.4/lib
最後,執行命令
arm-linux-gcc -v
若有版本資訊,則安裝成功。
三、 編譯 UBOOT 和 Linux 核心
tips:安裝前,建議獲得管理員許可權,並進行以下命令
sudo apt-get install make
sudo apt-get install gcc
sudo apt-get update
sudo apt-get upgrade
1.編譯 u-boot-1.1.6
將 uboot 原始碼壓縮包 ‘uboot1.1.6_FORLINX_6410.tgz’拷貝到 Ubuntu 的/forlinx
#tar zxf uboot1.1.6_FORLINX_6410.tgz
2.編譯 128M 記憶體開發板 Uboot 方法:
#cd uboot1.1.6 (進入 uboot 原始碼的目錄)
# make forlinx_nand_ram128_config(配置適用於 128M 記憶體開發板的 config)
#make clean (刪除以前編譯的檔案)
#make (編譯)
如果編譯成功,將在 ‘uboot1.1.6’目錄下產生名為 ‘u-boot.bin’的二進位制檔案。該
檔案即我們需要燒寫到 Nandflash 的 U-boot 映像檔案。
3. 編譯 Linux-3.0.1
將壓縮包 ‘FORLINX_linux-3.0.1.tar.gz’ 拷貝到forlinx下,
#tar zxf FORLINX_linux-3.0.1.tar.gz
4. 配置核心
tips:安裝前,建議獲得管理員許可權,並進行以下命令
sudo apt-get update
sudo apt-get upgrade
您可能需要安裝 ‘libncurses5’,以方便使用 ‘make menuconfig’ 命令,可以採用
以下命令列來安裝(這個步驟需要 pc 可以連線網際網路)
#sudo apt-get install libncurses5-dev
5.編譯核心
make zImage
如果報錯,先找到linux-3.0.1下的kernel資料夾,編輯timeconst.pl
gedit timeconst.pl
將373行的if (!defined(@val))改成if(!@val)
記得儲存!
編譯結束後將在核心原始碼目錄的 arch/arm/boot 中得到 Linux 核心映像檔案:zImage
四、 製作映像
1.將mkyaffs2image-nand2g 和 mkyaffs2image-nand256m拷到forlinx下
2.生成系統映像
mkyaffs2image-nand mkyaffs2image-nand mkyaffs2image-nand mkyaffs2image-nand256m 製作出的映像,適用於 256M 位元組 nandflash nandflash nandflash nandflash 的開發板製作命令:
#./mkyaffs2image-nand256m FileSystem-Yaffs2 rootfs.yaffs
mkyaffs2image-nand mkyaffs2image-nand mkyaffs2image-nand mkyaffs2image-nand2g 製作出的映像,適用於 1G 或 2G 或者 4G 位元組 nandflas nandflas nandflas nandflash的開發板製作命令:
#./mkyaffs2image-nand2g FileSystem-Yaffs2 rootfs.yaffs2
若以上出現報錯,首先檢查是否為管理員許可權
然後將被鎖的檔案獲得許可權
執行以下命令(讀、寫、執行許可權的位元掩碼分別為4 2 1 所以7代表擁有讀、寫、執行的所有許可權)
chmod 777 檔名
我遇到的是 下面2被鎖了
chmod 777 mkyaffs2image-nand256m
chmod 777 mkyaffs2image-nand2g
最後生成 rootfs.yaffs2 是可以下載到開發板 nandflash 中的 yaffs2 檔案系統映