0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux内核编译脚本

麦辣鸡腿堡 来源:嵌入式Linux充电站 作者:Vincent 2023-09-27 11:52 次阅读

获得编译命令及选项

编译linux时,默认不会显示编译的命令,如果你要获得编译命令及其选项,可以在make命令后面加上宏定义:

make V=1

如果希望编译系统告诉你为何某个目标文件需要重新编译,则:

make V=2

内核编译脚本

最后分享我常用的内核编译脚本mk.sh,给大家参考:

#!/bin/sh

export ARCH=arm
export PATH=~/toolchain/arm_glibc/host/bin:$PATH
export CROSS_COMPILE=arm-linux-gnu-

#make O=../bd defconfig
make O=../bd menuconfig -j32
make O=../bd dtbs

#反汇编
$(CROSS_COMPILE)objdump -d ../bd/vmlinux > ../image/vmlinux_dump.txt

#生成uImage
../ubd/tools/mkimage -A arm -T kernel -C none -O linux -a 0x80200000 -e 0x80200000 -n "debug kernel" -d ../bd/Image ../image/uImage

其中,make O=../bd defconfig只有在第一次编译内核的才使用,第一次编译过后,将这句注释,后面都通过make menuconfig修改内核配置。

objdump反汇编对大多数人来说可能用不上,一般在内核移植、启动分析时比较有用,但由于工作需要,我通常都会把反汇编加上。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 内核
    +关注

    关注

    3

    文章

    1362

    浏览量

    40224
  • Linux
    +关注

    关注

    87

    文章

    11222

    浏览量

    208896
  • 编译
    +关注

    关注

    0

    文章

    653

    浏览量

    32805
收藏 人收藏

    评论

    相关推荐

    Linux编译驱动、内核及应用程序分析

    作为一名嵌入式Linux新手,在学习的过程中会遇到很多问题。写了一个驱动程序怎么编译?怎么加载进内核
    的头像 发表于 01-17 13:46 6598次阅读
    <b class='flag-5'>Linux</b><b class='flag-5'>编译</b>驱动、<b class='flag-5'>内核</b>及应用程序分析

    Linux内核编译主要过程

    Linux内核编译主要过程: 配置、编译、安装 。
    发表于 08-08 16:02 709次阅读
    <b class='flag-5'>Linux</b><b class='flag-5'>内核</b>的<b class='flag-5'>编译</b>主要过程

    交叉编译linux内核(raspberry_3.6.y)

    一步一步教你交叉编译linux内核,RPI的内核编译教程,小众的东西了
    发表于 11-03 17:58 0次下载

    Linux内核编译详谈

    Linux内核编译详谈
    发表于 10-30 09:51 7次下载
    <b class='flag-5'>Linux</b><b class='flag-5'>内核</b><b class='flag-5'>编译</b>详谈

    基于Arm的Linux内核编译指导

    基于Arm的Linux内核编译指导
    发表于 10-30 10:13 15次下载
    基于Arm的<b class='flag-5'>Linux</b><b class='flag-5'>内核</b><b class='flag-5'>编译</b>指导

    如何编译安装Linux内核

    有一个 定制过的内核2.2.16-22ghosh在我的系统中运行(我的名字叫Subhasish Ghosh,你也可以命名为其它名称,事实上在系统中有两个内核是同时运行的)下面,搜索并编译Lin
    发表于 11-07 15:46 0次下载

    如何编译Linux内核

    不断更新。新的内核修订了旧内核的bug,并增加了许多新的特性。如果用户想要使用这些新特性,或想根据自己的系统度身定制一个更高效,更稳定的内核,就需要重新编译
    发表于 04-02 14:46 559次阅读

    嵌入式linux内核编译步骤

    编译嵌入式Linux内核都是通过make的不同命令来实现的,它的执行配置文件是Makefile。Linux内核中不同的目录结构里都有相应的M
    发表于 06-19 09:30 2810次阅读
    嵌入式<b class='flag-5'>linux</b><b class='flag-5'>内核</b>的<b class='flag-5'>编译</b>步骤

    Linux内核配置编译分析的设计方案

    Linux内核配置编译分析的设计方案
    发表于 07-08 16:53 18次下载
    <b class='flag-5'>Linux</b><b class='flag-5'>内核</b>配置<b class='flag-5'>编译</b>分析的设计方案

    如何才能编译Linux内核

    内核的bug ,并增加了许多新的特性。如果用户想要使用这些新特性, 或想根据自己的系统度身定制一个更高效, 更稳定的内核, 就需要重新编译内核。本文将以RedHat
    发表于 11-04 18:04 8次下载

    动手编译Linux内核的教程免费下载

    本文档的主要内容详细介绍的是动手编译Linux内核的教程免费下载。
    发表于 11-26 17:01 14次下载

    Linux内核编译与运行

    本文档的主要内容详细介绍的是Linux内核编译与运行免费下载。
    发表于 03-25 13:48 11次下载

    嵌入式Linux内核编译

    实验环境VMware Workstation PlayerUbuntu16.04kernel-3.2.tar.bz2Linux内核编译在ubuntu上编译嵌入式
    发表于 11-01 17:07 16次下载
    嵌入式<b class='flag-5'>Linux</b>的<b class='flag-5'>内核</b><b class='flag-5'>编译</b>

    STM32MP157 Linux系统移植开发篇8:Linux内核配置方法及编译

    Linux内核配置及编译解压内核建立源码目录该目录下以patch结尾的文件为ST官方提供的补丁文件,linux-5.4.31.tar.xz为
    发表于 12-04 21:06 9次下载
    STM32MP157 <b class='flag-5'>Linux</b>系统移植开发篇8:<b class='flag-5'>Linux</b><b class='flag-5'>内核</b>配置方法及<b class='flag-5'>编译</b>

    Linux内核编译和运行

    想让Linux内核代码跑起来,得先搭建编译和运行代码的环境。
    发表于 06-23 11:56 1342次阅读
    <b class='flag-5'>Linux</b><b class='flag-5'>内核</b>的<b class='flag-5'>编译</b>和运行