mirror of
https://github.com/mhx/dwarfs.git
synced 2025-08-04 02:06:22 -04:00
Update README
- Remove Python section as we're not going to maintain it - Remove ccache argument as that's handled automatically - Add sections on prebuilt & universal binaries
This commit is contained in:
parent
78648e9399
commit
ecdbb7ca78
69
README.md
69
README.md
@ -10,10 +10,11 @@ A fast high compression read-only file system for Linux and Windows
|
|||||||
- [Overview](#overview)
|
- [Overview](#overview)
|
||||||
- [History](#history)
|
- [History](#history)
|
||||||
- [Building and Installing](#building-and-installing)
|
- [Building and Installing](#building-and-installing)
|
||||||
|
- [Prebuilt Binaries](#prebuilt-binaries)
|
||||||
|
- [Universal Binaries](#universal-binaries)
|
||||||
- [Dependencies](#dependencies)
|
- [Dependencies](#dependencies)
|
||||||
- [Building](#building)
|
- [Building](#building)
|
||||||
- [Installing](#installing)
|
- [Installing](#installing)
|
||||||
- [Experimental Python Scripting Support](#experimental-python-scripting-support)
|
|
||||||
- [Static Builds](#static-builds)
|
- [Static Builds](#static-builds)
|
||||||
- [Usage](#usage)
|
- [Usage](#usage)
|
||||||
- [Windows Support](#windows-support)
|
- [Windows Support](#windows-support)
|
||||||
@ -28,6 +29,12 @@ A fast high compression read-only file system for Linux and Windows
|
|||||||
- [With EROFS](#with-erofs)
|
- [With EROFS](#with-erofs)
|
||||||
- [With fuse-archive](#with-fuse-archive)
|
- [With fuse-archive](#with-fuse-archive)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
TODO: universal binary
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||

|

|
||||||
@ -107,6 +114,43 @@ some rudimentary docs as well.
|
|||||||
|
|
||||||
## Building and Installing
|
## Building and Installing
|
||||||
|
|
||||||
|
### Prebuilt Binaries
|
||||||
|
|
||||||
|
[Each release](https://github.com/mhx/dwarfs/releases) has pre-built,
|
||||||
|
statically linked binaries for `Linux-x86_64`, `Linux-aarch64` and
|
||||||
|
`Windows-AMD64` available for download. These *should* run without
|
||||||
|
any dependencies and can be useful especially on older distributions
|
||||||
|
where you can't easily build the tools from source.
|
||||||
|
|
||||||
|
### Universal Binaries
|
||||||
|
|
||||||
|
In addition to the binary tarballs, there's a **universal binary**
|
||||||
|
available for each architecture. These universal binaries contain
|
||||||
|
*all* tools (`mkdwarfs`, `dwarfsck`, `dwarfsextract` and the `dwarfs`
|
||||||
|
FUSE driver) in a single executable. These executables are compressed
|
||||||
|
using [upx](https://github.com/upx/upx), so they are much smaller than
|
||||||
|
the individual tools combined.
|
||||||
|
|
||||||
|
The universal binaries can be run either through symbolic links named
|
||||||
|
after the proper tool. e.g.:
|
||||||
|
|
||||||
|
```
|
||||||
|
$ ln -s dwarfs-universal-0.7.0-RC5-Linux-aarch64 mkdwarfs
|
||||||
|
$ ./mkdwarfs --help
|
||||||
|
```
|
||||||
|
|
||||||
|
Or you can select the tool by passing `--tool=<name>` as the first
|
||||||
|
argument on the command line:
|
||||||
|
|
||||||
|
```
|
||||||
|
$ .\dwarfs-universal-0.7.0-RC5-Windows-AMD64.exe --tool=mkdwarfs --help
|
||||||
|
```
|
||||||
|
|
||||||
|
Note that just like the `dwarfs.exe` Windows binary, the universal
|
||||||
|
Windows binary depends on the `winfsp-x64.dll` from the
|
||||||
|
[WinFsp](https://github.com/winfsp/winfsp) project.
|
||||||
|
See the [Windows Support](#windows-support) section for more details.
|
||||||
|
|
||||||
### Dependencies
|
### Dependencies
|
||||||
|
|
||||||
DwarFS uses [CMake](https://cmake.org/) as a build tool.
|
DwarFS uses [CMake](https://cmake.org/) as a build tool.
|
||||||
@ -223,27 +267,6 @@ $ sudo make install
|
|||||||
|
|
||||||
Though you don't have to install the tools to play with them.
|
Though you don't have to install the tools to play with them.
|
||||||
|
|
||||||
### Experimental Python Scripting Support
|
|
||||||
|
|
||||||
You can build `mkdwarfs` with experimental support for Python
|
|
||||||
scripting:
|
|
||||||
|
|
||||||
```
|
|
||||||
$ cmake .. -DWITH_TESTS=1 -DWITH_PYTHON=1
|
|
||||||
```
|
|
||||||
|
|
||||||
This also requires Boost.Python. If you have multiple Python
|
|
||||||
versions installed, you can explicitly specify the version to
|
|
||||||
build against:
|
|
||||||
|
|
||||||
```
|
|
||||||
$ cmake .. -DWITH_TESTS=1 -DWITH_PYTHON=1 -DWITH_PYTHON_VERSION=3.8
|
|
||||||
```
|
|
||||||
|
|
||||||
Note that only Python 3 is supported. You can take a look at
|
|
||||||
[scripts/example.py](scripts/example.py) to get an idea for
|
|
||||||
what can currently be done with the interface.
|
|
||||||
|
|
||||||
### Static Builds
|
### Static Builds
|
||||||
|
|
||||||
Attempting to build statically linked binaries is highly discouraged
|
Attempting to build statically linked binaries is highly discouraged
|
||||||
@ -263,7 +286,7 @@ That's it! Now you can try building static binaries for DwarFS:
|
|||||||
```
|
```
|
||||||
$ git clone --recurse-submodules https://github.com/mhx/dwarfs
|
$ git clone --recurse-submodules https://github.com/mhx/dwarfs
|
||||||
$ cd dwarfs && mkdir build && cd build
|
$ cd dwarfs && mkdir build && cd build
|
||||||
$ cmake .. -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DWITH_TESTS=1 -DSTATIC_BUILD_DO_NOT_USE=1 -GNinja
|
$ cmake .. -DWITH_TESTS=1 -DSTATIC_BUILD_DO_NOT_USE=1 -GNinja
|
||||||
$ ninja
|
$ ninja
|
||||||
$ ninja test
|
$ ninja test
|
||||||
```
|
```
|
||||||
|
Loading…
x
Reference in New Issue
Block a user