交叉編譯linux內核
一.下載linux內核源碼
我使用的是linux-loongson-release-zb-kernel.tgz
將其解壓到/usr/src目錄下: tar -xzvf linux-loongson-release-zb-kernel.tgz
這樣在此目錄下會生成linux-loongson-release目錄
www.2cto.com
二.下載交叉編譯工具
下載地址: http://dev.lemote.com/files/binary/toolchain/kernel/gcc-3.4.6-newbin.ls2f.tar.gz
解壓放到/opt目錄下,先要修改/opt的權限
sudo chmod 766 /opt
tar -xzf gcc‐3.4.6‐newbin.ls2f.tar.gz -C /opt
然後在環鏡變量中制定其路徑
export PATH=/opt/gcc-3.4.6-newbin/bin:$PATH 也可把它寫入~/.bashrc,便於多次使用
設置可執行權限
chmod +x /opt/gcc-3.4.6-newbin/bin -R
www.2cto.com
三.內核配置
在源碼目錄下:
cp arch/mips/configs/loongson3a_xxxx_config
注:目前在arch/mips/configs下有5個龍芯3a的配置文件
loongson3a_dawning_config
loongson3a_rs780e_config
loongson3a_server_2u_defconfig
loongson3a_server_blade_defconfig
loongson3a_server_config
然後再make config 你會發現龍芯3a默認配置已經寫到配置文件中去了.
四.編譯內核 www.2cto.com
1.本地編譯直接 make完成內核的編譯
2.交叉編譯情況下,進入內核源碼根目錄下,輸入: make ARCH=mips CROSS_COMPILE=mipsel-linux-
也可修改makefile,對於反復編譯此法一勞永逸.修改根目錄下的makefile
給ARCH變量賦值: ARCH ?= mips
給CROSS_COMPILE 變量賦值CROSS_COOMPILE ?= mipsel‐linux‐
注:此步執行前要make menuconfig 進入配置界面把 Enable loadable module support 選中.再把它的下一級目錄的3和4,或2和4選中.
並且修改完要選擇 Save an Alternate Configuration File進行保存.