ShuangChenYue ShuangChenYue
首页
  • Cpp之旅
  • Cpp专栏
  • Effective_CPP
  • muduo网络库
  • Unix环境高级编程
  • Cpp提高编程
  • 计算机网络
  • 操作系统
  • 数据结构
  • Linux
  • 算法
  • 基础篇
  • MySql
  • Redis
  • 电子嵌入式通信协议
  • 深入浅出SSD
  • 文件系统
  • 汇编语言
  • STM32
  • 随笔(持续更新)
  • Git知识总结
  • Git 创建删除远程分支
  • nvm使用小结
  • 虚拟机固定 IP 地址
  • Shell 脚本学习笔记
  • VScode 插件 CodeGeeX 使用教程
  • KylinV10 将项目上传至 Github教程
  • KylinV10 安装 MySQL 教程(可防踩雷)
  • kylinV10-SP1 安装 QT
  • 高并发内存池
  • USBGUARD 项目编译环境配置
  • Power_Destory 项目
  • U 盘清除工具编译教程
  • 个人博客代码推送教程
  • HTML与CSS
  • JS学习
  • Vue3入门
  • Vue3进阶
  • 黑马Vue3
  • MFC编程随记
  • MFC实现ini配置文件的读取
  • MFC实现点击列表头排序
  • 贴图法美化Button按钮
  • 如何高效阅读嵌入式项目代码
  • NAND Flash
  • ARM 处理器
  • 嵌入式基础知识-存储器
  • 闪存存储和制造技术概述
  • 芯片IO驱动力
  • 主流先进封装技术介绍
  • 虎牙C++技术面经
  • 金山一面复习
  • 完美世界秋招 C++ 游戏开发面经(Cpp部分)
  • 博客搭建
  • 网站收藏箱
首页
  • Cpp之旅
  • Cpp专栏
  • Effective_CPP
  • muduo网络库
  • Unix环境高级编程
  • Cpp提高编程
  • 计算机网络
  • 操作系统
  • 数据结构
  • Linux
  • 算法
  • 基础篇
  • MySql
  • Redis
  • 电子嵌入式通信协议
  • 深入浅出SSD
  • 文件系统
  • 汇编语言
  • STM32
  • 随笔(持续更新)
  • Git知识总结
  • Git 创建删除远程分支
  • nvm使用小结
  • 虚拟机固定 IP 地址
  • Shell 脚本学习笔记
  • VScode 插件 CodeGeeX 使用教程
  • KylinV10 将项目上传至 Github教程
  • KylinV10 安装 MySQL 教程(可防踩雷)
  • kylinV10-SP1 安装 QT
  • 高并发内存池
  • USBGUARD 项目编译环境配置
  • Power_Destory 项目
  • U 盘清除工具编译教程
  • 个人博客代码推送教程
  • HTML与CSS
  • JS学习
  • Vue3入门
  • Vue3进阶
  • 黑马Vue3
  • MFC编程随记
  • MFC实现ini配置文件的读取
  • MFC实现点击列表头排序
  • 贴图法美化Button按钮
  • 如何高效阅读嵌入式项目代码
  • NAND Flash
  • ARM 处理器
  • 嵌入式基础知识-存储器
  • 闪存存储和制造技术概述
  • 芯片IO驱动力
  • 主流先进封装技术介绍
  • 虎牙C++技术面经
  • 金山一面复习
  • 完美世界秋招 C++ 游戏开发面经(Cpp部分)
  • 博客搭建
  • 网站收藏箱
  • Git知识总结
  • nvm使用小结
  • 随笔(持续更新)
  • 虚拟机固定ip地址
  • VScode 插件 CodeGeex 使用教程
  • KylinV10 将项目上传至 Github
  • KylinV10 安装 MySQL 教程(可防踩雷)
  • 个人博客代码推送教程
  • kylinV10-SP1 安装 QT
  • 高并发内存池
  • USBGUARD项目编译环境配置
  • Shell 脚本学习笔记
  • Git 备忘清单
  • Power_Destory 项目
  • U盘清除工具编译教程
    • 1.将 libhv 相关库拷贝至相关编译平台的目录
    • 2.编译客户端 client_wipe
    • 3.编译服务端 server_wipe
    • 4.本地运行
    • 5.打包
    • 6.生成镜像文件(要先打包)
  • Git 创建删除远程分支
  • 开发日常
霜晨月
2024-02-27
目录

U盘清除工具编译教程

# U 盘清除工具编译教程

git 上面的项目地址

git clone http://192.168.6.2/HQR/net_wipe.git
1

目录结构

net_wipe
├── client_wipe(客户端)
│	├── build.sh
│	└── ...
├── conf(配置文件)
├── deb(打包用的目录)
├── make_shell
├── passwd_ask
├── public
├── README.txt
├── release(编译号的可执行文件存放位置)
├── run_shell
├── server_wipe(服务端)
│	├── build.sh
│	└── ...
├── shell
├── test
└──	thirdparty(libhv第三方静态库--三个平台都已编译好)
	 ├──libhv
	 └──libhv_static
        ├── aarch64
        │   ├── libhv.so
        │   └── libhv_static.a
        ├── mips64
        │   ├── libhv.so
        │   └── libhv_static.a
        └── x86_64
            ├── libhv.so
            └── libhv_static.a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

# 1.将 libhv 相关库拷贝至相关编译平台的目录

thirdparty/libhv_static 目录里面分别有三个平台目录,分别存放了对应的已编译好的 libhv 静态库和动态库

# 把 aarch64 目录里的动静态库都复制到 
sudo cp libhv.so /usr/aarch64-linux-gnu/lib
sudo cp libhv_static.a /usr/aarch64-linux-gnu/lib

# 把 x86_64 目录里的动静态库都复制到 
sudo cp libhv.so /usr/lib
sudo cp libhv_static.a /usr/lib

# 把 mips64 目录里的动静态库都复制到 /usr/lib/gcc-cross/mips64el-linux-gnuabi64/5 目录里
sudo cp libhv.so /usr/lib/gcc-cross/mips64el-linux-gnuabi64/5
sudo cp libhv_static.a /usr/lib/gcc-cross/mips64el-linux-gnuabi64/5
1
2
3
4
5
6
7
8
9
10
11

# 2.编译客户端 client_wipe

# 在 client_wipe 目录下运行脚本 build.sh
./build.sh
1
2

# 3.编译服务端 server_wipe

# 在 client_wipe 目录下运行脚本 build.sh
./build.sh
1
2

# 4.本地运行

在 release 文件夹下有三个环境版本,这里选择 X86_64 的环境

image

先运行服务端(要先把测试用的红色的USB key U盘先插入连接到虚拟机)

# 要进入到 /net_wipe/release/x86_64/kylinV10/bin 下面的 bin 目录下,先运行服务端,在另起一个标签页运行客户端。
sudo ./server_wipe -f ../etc/conf/configure.txt
./client_wipe -f ../etc/conf/configure.txt
1
2
3

# 5.打包

要把 net_wipe/release/x86_64/kylinV10/bin 目录下的 client_wipe 和 server_wipe 这两个可执行文件复制到 net_wipe/deb/origin/x86_64/bin 这里

这是示范的是 x86_64 平台下的方式,其他平台同理,同样复制到对应的目录下,例如 arm 平台就复制到 net_wipe/deb/origin/aarch64/bin 这里

image

然后返回到 net_wipe/deb/ 目录运行命令

python3 -m Packager -m single -v 1.1.0
# 建议选择跨平台打包,三个平台的安装包一起打包,生成镜像文件时能用到
1
2
  • 其中,这里最后的数字是版本号,可以随意更改,合理即可。

# 6.生成镜像文件(要先打包)

mkisofs --input-charset utf-8 -r -l -T -J -V "CleanTool" -o $1.iso $2
1
  • $2 是要制作成镜像的文件夹
  • $1 是镜像的名字

例如:以 net_wipe 项目为例,想要把 net_wipe 这个项目打包成镜像文件,把 net_wipe/passwd_ask 目录下 x86_64、mips64、aarch64 这三个目录复制到新创建一个 iso 文件夹里

net_wipe/deb 目录里面的原来的内容:

image

最终的目录内容:

image

要在 $2 这个文件的上一级目录执行这个命令,即 net_wipe 这层目录

mkisofs --input-charset utf-8 -r -l -T -J -V "CleanTool" -o CleanTool.iso deb
1
上次更新: 2024/6/3 14:54:44
Power_Destory 项目
Git 创建删除远程分支

← Power_Destory 项目 Git 创建删除远程分支→

Theme by Vdoing | Copyright © 2023-2024 霜晨月
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式