编译linux小记
2022/8/21 5:28:47
本文主要是介绍编译linux小记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
(可选)编译环境搭建
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"
交叉编译
这篇关于编译linux小记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-18git仓库有更新,jenkins 自动触发拉代码怎么配置的?-icode9专业技术文章分享
- 2024-12-18Jenkins webhook 方式怎么配置指定的分支?-icode9专业技术文章分享
- 2024-12-13Linux C++项目实战入门教程
- 2024-12-13Linux C++编程项目实战入门教程
- 2024-12-11Linux部署Scrapy教程:新手入门指南
- 2024-12-11怎么将在本地创建的 Maven 仓库迁移到 Linux 服务器上?-icode9专业技术文章分享
- 2024-12-10Linux常用命令
- 2024-12-06谁看谁服! Linux 创始人对于进程和线程的理解是…
- 2024-12-04操作系统教程:新手入门及初级技巧详解
- 2024-12-04操作系统入门:新手必学指南