ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

编译linux小记

2022-08-19 07:00:27  阅读:121  来源: 互联网

标签:make 配置 编译 内核 linux docker 小记


(可选)编译环境搭建

docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0
docker run -it -p 8070:8070 -v ~/inner:/tmp --privileged=true swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0 /bin/bash

前期准备

获取linux源码https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.19.255.tar.xz
解压tar Jxfv linux-4.19.255.tar.xz
cd ./linux-4.19.255

普通编译

make menuconfig
然后General setup->Local version --append to kernel release输入-1.0-linux然后ok
保存退出图形配置界面
make -j 8
整理模块 make modules_install
整理内核 make install

这一套过程可能需要得半个小时到一个小时就很费劲,需要玩会儿手机
编译完会在源码目录下生成一个 vmlinux 目录,同时 arch/x86_64/boot 目录下会多一个 bzimage 文件, bzImage 就是压缩后的一个镜像,vmlinux 是未压缩的除此之外根据编译选项的不同还可以编译出其他格式的镜像,比如 make 执行 uimage 就会编译出 uboot 这种专门用于嵌入式设备上的镜像,另外 bzImage 是通过 gzip 压缩过的格式。


make menuconfig中的“M”表示要编译成内核模块儿,但是不直接放到内核中,而是作为 .ko 文件,等内核运行起来了需要的时候再干进去.按空格就能控制 * 还是 M.

配置内核选项
支持“更新”模式进行配置: make help
(a) make config:基于命令行以遍历的方式去配置内核中可配置的每个选项
(b) make menuconfig:基于curses的文本窗口界面
(c) make gconfig:基于GTK (GNOME)环境窗口界面
(d) make xconfig:基于QT(KDE)环境的窗口界面

支持“全新配置”模式进行配置
(a) make defconfig:基于内核为目标平台提供的“默认”配置进行配置
(b) make allyesconfig: 所有选项均回答为"yes"
(c) make allnoconfig: 所有选项均回答为"no"

交叉编译

标签:make,配置,编译,内核,linux,docker,小记
来源: https://www.cnblogs.com/qsbye/p/16600726.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有