HEnvBox/ReadMe.md
2023-11-13 13:50:01 +08:00

4.6 KiB
Raw Blame History

说明

本工程主要用于快速配置本人常用的开发环境。

主要支持以下操作系统:

  • Windows 10及更新版本,架构为x86_64。
  • Ubuntu 22.04架构为x86_64。

对于Windows而言本人常用MSYS2作为开发环境。

存储空间

由于是创建开发环境,则会尽可能多地安装软件,故占用空间较大。

Windows推荐200G以上空间本工程目录Linux推荐100G以上空间本工程目录+系统软件包安装目录)。

一般情况下本工程将下载的软件放入本地程序根路径所在目录但在某些系统中如Linux将使用系统软件包管理工具安装软件此时下载的软件将占用系统空间。

交叉编译工具链

对于比较流行的编译目标(如arm-none-eabi),各个系统厂商或者MSYS2官方可能会收录相关软件包。

若官方未收录或者期待使用较新的交叉编译工具链,可采用crosstool-ng编译。

注意:在Windows(Windows 10及更新版本)中,MSYS2的crosstool-ng需要目录支持大小写可在创建目录后使用fsutil file setCaseSensitiveInfo 新创建的目录创建一个支持大小写的NTFS目录后使用该目录编译。

环境变量

本工程主要使用环境变量进行脚本操作:

名称 说明 备注
HENVBOX_ROOT_PATH 根路径 此路径的格式由操作系统决定
HENVBOX_TYPE 类型 对于windows而言其值固定为win32对于其它系统而言其值为uname -s返回的值。
HENVBOX_LOCAL_ROOT_PATH 本地程序根路经 此路径的格式由操作系统决定
HENVBOX_LOCAL_BINDIR_PATH 本地程序根二进制可执行文件路经 此路径的格式由操作系统决定
HENVBOX_LOCAL_ROOT_PATH_UNIX 本地程序根路经Unix格式 此路径专用于MSYS2
HENVBOX_LOCAL_BINDIR_PATH_UNIX 本地程序根二进制可执行文件路经Unix格式 此路径专用于MSYS2
HENVBOX_TOOLS_PATH tools路径 此路径的格式由操作系统决定
HENVBOX_TOOLS_TYPE tools类型 对于windows而言其值可选msys32或msys64。对于其它系统而言其值为软件包管理工具名称或者默认值common。

注:本地程序表示需要从网络上下载到本地安装的程序tools目录为自带工具或者工具安装资源。

脚本说明

Windows

  • config.bat在cmd窗口中使用call config.bat路径 可配置环境。
  • install.bat安装或者更新软件包,可多次调用,为防止异常不要同时执行多个实例。
  • upgrade.bat更新软件包,可多次调用。
  • uninstall.bat:卸载安装,主要用于删除右键信息

Ubuntu

  • config.sh在bash中使用. config.bat路径 可配置环境。
  • install.sh安装或者更新软件包,可多次调用,为防止异常不要同时执行多个实例。
  • upgrade.sh更新软件包,可多次调用。
  • uninstall.sh:卸载安装,主要用于删除.bashrc信息。注意:为保证系统稳定性,不会删除已安装的软件包。

安装

Windows

保证目录可写可参考MSYS2对目录的要求确保安装路径中没有空格与中文。

以管理员权限执行install.bat,等待安装完成。

完成后可在目录的右键菜单中找到HEnvBox选项。在需要使用各种MSYS2中的工具时可使用右键菜单打开HEnvBox。

Ubuntu

使用具有管理员权限的账户(可使用sudo提权)执行install.sh,等待安装完成,期间可能要求输入用户密码。

使用

Windows

  • 默认情况下使用Msys2的UCRT64环境。如需编译32位应用可使用Msys2的MINGW32环境(由于较多应用停止支持32位因此此环境可能功能不全)。
  • 如需保持工具的更新请定期执行更新脚本若太长时间如几个月不更新可能因为GPG签名过期而无法更新。