Fixing several typos in BUILD.md

This commit is contained in:
david 2024-05-18 12:22:15 +02:00
parent adfc48d226
commit 4b2c156bc4

View File

@ -1,31 +1,32 @@
Hier ist die überarbeitete Version deiner BUILD.md Datei:
# Build Instructions # Build Instructions
Instructions for building this repository on Linux. Instructions for building this repository on Linux.
## Table Of Contents ## Table of Contents
- [Build Instructions](#build-instructions) - [Build Instructions](#build-instructions)
- [Table Of Contents](#table-of-contents) - [Table of Contents](#table-of-contents)
- [Contributing to the Repository](#contributing-to-the-repository) - [Contributing to the Repository](#contributing-to-the-repository)
- [Building On Linux](#building-on-linux) - [Repository Content](#repository-content)
- [Building on Linux](#building-on-linux)
- [Linux Development Environment Requirements](#linux-development-environment-requirements) - [Linux Development Environment Requirements](#linux-development-environment-requirements)
- [Required Package List](#required-package-list) - [Required Package List](#required-package-list)
- [Install and prepare required Rust version](#install-and-prepare-required-rust-version) - [Install and Prepare Required Rust Version](#install-and-prepare-required-rust-version)
- [Required MacOSX Sdk](required-macosx-sdk) - [Required macOS SDK](#required-macos-sdk)
- [Build and use MacOS Sdk from XCode](build-and-use-macos-sdk-from-xcode) - [Build and Use macOS SDK from Xcode](#build-and-use-macos-sdk-from-xcode)
- [Build the Project](#build-the-project) - [Build the Project](#build-the-project)
## Contributing to the Repository ## Contributing to the Repository
If you intend to contribute, the preferred work flow is for you to develop If you intend to contribute, the preferred workflow is for you to develop your contribution in a fork of this repository in your GitHub account and then submit a pull request.
your contribution in a fork of this repository in your GitHub account and then
submit a pull request.
## Repository Content ## Repository Content
This repository contains the source code necessary to build warp-packer for different platforms and architecture. This repository contains the source code necessary to build warp-packer for different platforms and architectures.
## Building On Linux ## Building on Linux
### Linux Development Environment Requirements ### Linux Development Environment Requirements
@ -35,56 +36,69 @@ This repository has been built and tested on Debian 12.5 (Bookworm) on an AMD64
`apt install curl maven clang cmake libssl-dev zlib1g-dev liblzma-dev libbz2-dev gcc-aarch64-linux-gnu gcc-mingw-w64-x86-64-win32` `apt install curl maven clang cmake libssl-dev zlib1g-dev liblzma-dev libbz2-dev gcc-aarch64-linux-gnu gcc-mingw-w64-x86-64-win32`
#### Install and prepare required Rust version #### Install and Prepare Required Rust Version
This repository has been built and tested with rust version 1.78. This repository has been built and tested with Rust version 1.78.
To install the newest version, run the following command: To install the newest version, run the following command:
`curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh` `curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh`
If newer version won't work, a specific version can be used with the following command: If a newer version doesn't work, a specific version can be installed with the following command:
`$ curl --proto '=https' --tls1.2 -sSf https://sh.rustup.rs/ | sh -s --default-toolchain=1.78.0` `$ curl --proto '=https' --tls1.2 -sSf https://sh.rustup.rs/ | sh -s --default-toolchain=1.78.0`
For more information see this [Github Issue](https://github.com/rust-lang/rustup/issues/2882). For more information see this [GitHub Issue](https://github.com/rust-lang/rustup/issues/2882).
After install run the following commands to get the necessary targets: After installing, run the following commands to get the necessary targets:
`rustup target add x86_64-apple-darwin` ```
`rustup target add aarch64-unknown-linux-gnu` rustup target add x86_64-apple-darwin
`rustup target add x86_64-pc-windows-gnu` rustup target add aarch64-unknown-linux-gnu
rustup target add x86_64-pc-windows-gnu
```
#### Required MacOSX Sdk #### Required macOS SDK
To build the warp-packer for the target x86_64-apple-darwin a MacOSX Sdk is needed. The repository has been build and tested with MacOSX10.12 Sdk. To build warp-packer for the target x86_64-apple-darwin, a macOS SDK is needed. The repository has been built and tested with MacOSX10.12 SDK.
There are seveal Github repository available that contains different Sdk versions but they all seems to miss the header files. So it is recommend to download it from apples websites. There are several GitHub repositories available that contain different SDK versions, but they all seem to miss the header files. So it is recommended to download it from Apple's website.
The MacOS Sdk is integrated in XCode and this repository has been build and tested with Xcode version 8.3.3. The macOS SDK is integrated into Xcode, and this repository has been built and tested with Xcode version 8.3.3.
##### Build and use MacOS Sdk from XCode ##### Build and Use macOS SDK from Xcode
To build and use the MacOS Sdk from XCode [osxcross](https://github.com/tpoechtrager/osxcross) will be used. To build and use the macOS SDK from Xcode, [osxcross](https://github.com/tpoechtrager/osxcross) will be used.
Download osxcross: Download osxcross:
`git clone https://github.com/tpoechtrager/osxcross.git` `git clone https://github.com/tpoechtrager/osxcross.git`
Extract MacOS Sdk from XCode (see [here](https://github.com/tpoechtrager/osxcross?tab=readme-ov-file#packing-the-sdk-on-linux---method-1-xcode--80): Extract macOS SDK from Xcode (see [here](https://github.com/tpoechtrager/osxcross?tab=readme-ov-file#packing-the-sdk-on-linux---method-1-xcode--80)):
`<path/to>/osxcross/tools/gen_sdk_package_pbzx.sh <path/to>/Xcode_8.3.3.xip` `<path/to>/osxcross/tools/gen_sdk_package_pbzx.sh <path/to>/Xcode_8.3.3.xip`
Hint: This method may require up to 45 GB of free disk space.
An SSD is recommended for this method. Hint: This method may require up to 45 GB of free disk space. An SSD is recommended for this method.
Copy or move the SDK into the `<path/to>/osxcross/tarballs/` directory. Copy or move the SDK into the `<path/to>/osxcross/tarballs/` directory.
Run: Run:
`UNATTENDED=yes OSX_VERSION_MIN=10.12 ./build.sh` to create macOS cross toolchain. ```
UNATTENDED=yes OSX_VERSION_MIN=10.12 ./build.sh
```
to create the macOS cross toolchain.
Add the target/bin folder to your PATH environment variable: Add the target/bin folder to your PATH environment variable:
`PATH="<path/to>/osxcross/target/bin:$PATH"` ```
PATH="<path/to>/osxcross/target/bin:$PATH"
```
#### Build the Project #### Build the Project
Clone the project and within the project run Clone the project and within the project directory, run:
`make` ```
make
```
to start the build. to start the build.
The compiled warp-packer files are in the folder: The compiled warp-packer files are in the folder:
`<path/to/>warp/target/<target>/release/warp-packer` ```
<path/to>/warp/target/<target>/release/warp-packer
```
e.g. e.g.
`warp/target/aarch64-unknown-linux-gnu/release/warp-packer` ```
warp/target/aarch64-unknown-linux-gnu/release/warp-packer
```