1.1 环境搭建:

  • Centos 7 x86_64
  • 项目链接 : https://github.com/ventoy/Ventoy
  • 我的博客: https://blog.ztfot.com/?p=353

1.2 安装包:

yum update -y
yum install libXpm net-tools bzip2 wget vim gcc gcc-c++ samba dos2unix glibc-devel glibc.i686 glibc-devel.i686 mpfr.i686 mpfr-devel.i686 zlib.i686 rsync autogen autoconf automake libtool gettext* bison binutils flex device-mapper-devel SDL libpciaccess libusb freetype freetype-devel gnu-free-* qemu-* virt-* libvirt* vte* NetworkManager-bluetooth brlapi fuse-devel dejavu* gnu-efi* pesign shim scsi-initiator-utils grub2-tools zip nasm acpica-tools glibc-static zlib-static xorriso -y

2.1 下载源码:

cd /home
git clone "https://github.com/ventoy/Ventoy.git"
mv Ventoy Ventoy-master

2.2下载第三方源码以及工具

wget https://www.fefe.de/dietlibc/dietlibc-0.34.tar.xz -P /home/Ventoy-master/DOC
wget https://musl.libc.org/releases/musl-1.2.1.tar.gz -P /home/Ventoy-master/DOC
wget https://ftp.gnu.org/gnu/grub/grub-2.04.tar.xz -P /home/Ventoy-master/GRUB2
wget https://codeload.github.com/tianocore/edk2/zip/edk2-stable201911 -P /home/Ventoy-master/EDK2
wget https://codeload.github.com/relan/exfat/zip/v1.3.0 -P /home/Ventoy-master/ExFAT
wget https://codeload.github.com/libfuse/libfuse/zip/fuse-2.9.9 -P /home/Ventoy-master/ExFAT
wget https://releases.linaro.org/components/toolchain/binaries/7.4-2019.02/aarch64-linux-gnu/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu.tar.xz -P /opt
wget https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--uclibc--stable-2020.08-1.tar.bz2 -P /opt
wget http://ftp.loongnix.org/toolchain/gcc/release/mips-loongson-gcc7.3-2019.06-29-linux-gnu.tar.gz -P /opt
wget https://github.com/ventoy/musl-cross-make/releases/download/latest/output.tar.bz2 -P /opt
wget http://www.tinycorelinux.net/11.x/x86_64/release/distribution_files/vmlinuz64 -P /home/Ventoy-master/LiveCD/ISO/EFI/boot
wget http://www.tinycorelinux.net/11.x/x86_64/release/distribution_files/corepure64.gz -P /home/Ventoy-master/LiveCD/ISO/EFI/boot
wget http://www.tinycorelinux.net/11.x/x86_64/release/distribution_files/modules64.gz -P /home/Ventoy-master/LiveCD/ISO/EFI/boot

2.3准备第三方工具

cd /home/Ventoy-master/DOC/
tar xf musl-1.2.1.tar.gz
cd musl-1.2.1
./configure && make install
tar vxf /opt/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu.tar.xz  -C /opt
tar vxf /opt/aarch64--uclibc--stable-2020.08-1.tar.bz2  -C /opt
tar vxf /opt/output.tar.bz2  -C /opt
mv /opt/output /opt/mips64el-linux-musl-gcc730

2.4设置环境变量

export PATH=$PATH:/opt/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin:/opt/aarch64--uclibc--stable-2020.08-1/bin:/opt/mips64el-linux-musl-gcc730/bin

2.5编译

cd /home/Ventoy-master/INSTALL
sh all_in_one.sh
sh ventoy_pack.sh

3.0自动化脚本

# 将 Ventoy-master 放在/home 目录下
yum update -y
yum install libXpm net-tools bzip2 wget vim gcc gcc-c++ samba dos2unix glibc-devel glibc.i686 glibc-devel.i686 mpfr.i686 mpfr-devel.i686 zlib.i686 rsync autogen autoconf automake libtool gettext* bison binutils flex device-mapper-devel SDL libpciaccess libusb freetype freetype-devel gnu-free-* qemu-* virt-* libvirt* vte* NetworkManager-bluetooth brlapi fuse-devel dejavu* gnu-efi* pesign shim scsi-initiator-utils grub2-tools zip nasm acpica-tools glibc-static zlib-static xorriso -y
wget https://www.fefe.de/dietlibc/dietlibc-0.34.tar.xz -P /home/Ventoy-master/DOC
wget https://musl.libc.org/releases/musl-1.2.1.tar.gz -P /home/Ventoy-master/DOC
wget https://ftp.gnu.org/gnu/grub/grub-2.04.tar.xz -P /home/Ventoy-master/GRUB2
wget https://codeload.github.com/tianocore/edk2/zip/edk2-stable201911 -P /home/Ventoy-master/EDK2
wget https://codeload.github.com/relan/exfat/zip/v1.3.0 -P /home/Ventoy-master/ExFAT
wget https://codeload.github.com/libfuse/libfuse/zip/fuse-2.9.9 -P /home/Ventoy-master/ExFAT
wget https://releases.linaro.org/components/toolchain/binaries/7.4-2019.02/aarch64-linux-gnu/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu.tar.xz -P /opt
wget https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--uclibc--stable-2020.08-1.tar.bz2 -P /opt
wget http://ftp.loongnix.org/toolchain/gcc/release/mips-loongson-gcc7.3-2019.06-29-linux-gnu.tar.gz -P /opt
wget https://github.com/ventoy/musl-cross-make/releases/download/latest/output.tar.bz2 -P /opt
wget http://www.tinycorelinux.net/11.x/x86_64/release/distribution_files/vmlinuz64 -P /home/Ventoy-master/LiveCD/ISO/EFI/boot
wget http://www.tinycorelinux.net/11.x/x86_64/release/distribution_files/corepure64.gz -P /home/Ventoy-master/LiveCD/ISO/EFI/boot
wget http://www.tinycorelinux.net/11.x/x86_64/release/distribution_files/modules64.gz -P /home/Ventoy-master/LiveCD/ISO/EFI/boot
cd /home/Ventoy-master/DOC/
tar xf musl-1.2.1.tar.gz
cd musl-1.2.1
./configure && make install
tar vxf /opt/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu.tar.xz  -C /opt
tar vxf /opt/aarch64--uclibc--stable-2020.08-1.tar.bz2  -C /opt
tar vxf /opt/output.tar.bz2  -C /opt
mv /opt/output /opt/mips64el-linux-musl-gcc730
export PATH=$PATH:/opt/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin:/opt/aarch64--uclibc--stable-2020.08-1/bin:/opt/mips64el-linux-musl-gcc730/bin
cd /home/Ventoy-master/INSTALL
sh all_in_one.sh
sh ventoy_pack.sh
ls && pwd

手动编译Ventoy相关推荐

  1. linux内核centos6.9,CentOS6.9手动编译并更新Kernel内核版本

    Kernel是Linux操作系统的核心部分.它由操作系统中用于管理存储器.文件.外设和系统资源的那些部分组成.Kernel是操作系统的核心,掌控着所有硬件设备的控制权. 内核就是系统上面的一个文件,这 ...

  2. CentOS6.9下手动编译并安装Python3.7.0

    CentOS6.9默认安装的python版本为2.6.6,若想安装python3以上版本,只能手工编译安装 下面介绍Python-3.7.0版本的手动编译并安装的步骤 1.下载Python-3.7.0 ...

  3. 图解命令行手动编译构建一个win32汇编程序

    首先安装masm32 V11.0:安装完后出现下列对话框: 图没截好:下面图的 k. 是 link. :ktopPath是DesktopPath: 此段代码的含义是用WScript创建了一个快捷方式, ...

  4. 搞定JSP第一个Servlet例子并且还是手动编译

    前提是,Java Web 开发环境配置好. 当前Tomcat配置指向的目录是 ...... <Context path="" docBase="D:/Users/s ...

  5. 用csc命令行手动编译cs文件

    一般初学c#时,用记事本写代码,然后用命令行执行csc命令行可以编译cs文件.方法有两种 1:配置环境,一劳永逸 一般来说在C:\Windows\Microsoft.NET\Framework\v4. ...

  6. 手动编译 lombok_Lombok,一种编译时Java注释预处理器,可最大程度地减少代码大小...

    手动编译 lombok 在本文中,我们将看到如何在常规Java代码中使用lombok来最大程度地减少代码长度和冗余. 什么是Lombok? Lombok,一个编译时注释预处理器,有助于在编译时注入一些 ...

  7. $compile 手动编译

    angularjs里比较重要但又很少手动调用的要属$compile服务了,通常在写组件或指令时,都是angularjs自动编译完成的,但有时我们可能需要手动编译,比如封装一个table组件,根据参数实 ...

  8. linux 内核编译不能打字,linux系统升级后,手动编译的kernel无法启动问题

    linux系统升级后,手动编译的kernel无法启动问题 linux系统升级后,手动编译的kernel无法启动问题 做开发相关,需要编译3.18的kernel,x86_64的,但是我的deepin升级 ...

  9. 使用csc手动编译cs文件

    1.首先定位csc.exe文件路径:一般来说是C:\Windows\Microsoft.NET\Framework\v4.0.30319(v4.0.30319是版本号,具体版本号取决你实际安装的版本) ...

最新文章

  1. centos 找不到php.ini,centos找不到php.ini文件
  2. 纪委计算机管理制度,纪委监察处信息管理办法
  3. LDAP 中 CN, OU, DC 的含义(ldap学习一)
  4. python | ^ ~
  5. Springmvc的handler method参数绑定常用的注解
  6. 安卓SQLiteOpenHelper使用说明
  7. iview日期控件 双向绑定日期
  8. Less语法基于node\grunt/gulp编译
  9. echarts如何显示在页面上
  10. php redis 传递闭包,通过缓存构建高性能 Laravel 应用
  11. Android音频实时传输与播放(四):源码下载(问题更新)【转】
  12. VirtualBox桥接网络的简单配置,让虚拟机直接访问网络
  13. recovery升级是显示进度条_注意!税控系统软件升级了,还有疑问看这里!
  14. 福玛特机器人怎么开机_福玛特扫地机器人常见问题故障汇总
  15. 【转】Asp.Net TreeView with CheckBox
  16. Quartz框架调用Demo
  17. PRINCE2和PMP体系架构有何区别
  18. 药品名自动归类机器人(化药_中成药_中药材)
  19. 《近匠》专访启明星辰安全研究中心副总监侯浩俊——物联网安全攻防的“线上幽灵”...
  20. Juniper 防火墙JSRP高可用性HA(High Availability) chassis cluster双击冗余

热门文章

  1. 电脑桌面便签小工具_可以提示每日工作的桌面工具
  2. Git和Github简单教程【转】
  3. 相机模型 Omnidirectional Camera(全方位摄像机)
  4. 数据可视化分析案例:探索BRFSS电话调查数据
  5. Serverless + 低代码,让技术小白也能成为全栈工程师?
  6. 二维条码扫描模组在肯德基KFC的无纸化点餐解决方案
  7. C语言分割平衡字符串递归,第 2 章 迭代、归纳和递归
  8. 让一个div 上下左右居中
  9. 用Python写个自动批改作业系统
  10. Initializing from file failed