交叉编译linux内核

本文详细介绍了如何在Linux环境下交叉编译龙芯3A平台的内核。首先,从指定源下载并解压Linux内核源码至/usr/src目录。接着,下载并安装交叉编译工具到/opt目录,并更新环境变量。然后,通过复制配置文件并运行'make menuconfig'进行内核配置。最后,进行交叉编译,设置ARCH和CROSS_COMPILE变量,确保启用模块支持并保存配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.下载linux内核源码

     我使用的是linux-loongson-release-zb-kernel.tgz

     将其解压到/usr/src目录下: tar -xzvf linux-loongson-release-zb-kernel.tgz

     这样在此目录下会生成linux-loongson-release目录

二.下载交叉编译工具

     下载地址: 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

三.内核配置

     在源码目录下:

          cp arch/mips/configs/loongson3a_xxxx_config .config

     注:目前在arch/mips/configs下有5个龙芯3a的配置文件

          loongson3a_dawning_config
          loongson3a_rs780e_config
          loongson3a_server_2u_defconfig
          loongson3a_server_blade_defconfig
          loongson3a_server_config
    然后再make menuconfig 你会发现龙芯3a默认配置已经写到配置文件中去了.

    注:第一次make menuconfig时可能会报错,这时需要下一个库:   apt-get install libncurses*

四.编译内核

      1.本地编译直接 make完成内核的编译

            -jn 可以开n个线程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进行保存.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值