a free Monero desktop wallet
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

108 lines
2.8 KiB

  1. ## Buildbot builds
  2. The docker build bins can be found here: https://build.featherwallet.org/files/
  3. ## Docker static builds
  4. Static builds via Docker are done in 3 steps:
  5. 1. Cloning this repository (+submodules)
  6. 2. Creating a base Docker image
  7. 3. Using the base image to compile a build
  8. ### Linux (reproducible)
  9. The docker image for reproducible Linux static builds uses Ubuntu 16.04 and compiles the required libraries statically
  10. so that the resulting Feather binary is static. For more information, check the Dockerfile: `Dockerfile`.
  11. #### 1. Clone
  12. ```bash
  13. git clone --branch master --recursive https://git.featherwallet.org/feather/feather.git
  14. cd feather
  15. ```
  16. Replace `master` with the desired version tag (e.g. `beta-4`) to build the release binary.
  17. #### 2. Base image
  18. ```bash
  19. docker build --tag feather:linux --build-arg THREADS=4 .
  20. ```
  21. Building the base image takes a while. You only need to build the base image once.
  22. #### 3. Build
  23. ##### Standalone binary
  24. ```bash
  25. docker run --rm -it -v $PWD:/feather -w /feather feather:linux sh -c 'make release-static -j4'
  26. ```
  27. If you're re-running a build make sure to `rm -rf build/` first.
  28. The resulting binary can be found in `build/bin/feather`.
  29. ##### AppImage
  30. First create the standalone binary using the Docker command in the previous step.
  31. ```bash
  32. docker run --rm -it -v $PWD:/feather -w /feather feather:linux contrib/build-appimage.sh
  33. ```
  34. ### Windows (reproducible)
  35. #### 1. Clone
  36. ```bash
  37. git clone --branch master --recursive https://git.featherwallet.org/feather/feather.git
  38. cd feather
  39. ```
  40. Replace `master` with the desired version tag (e.g. `beta-4`) to build the release binary.
  41. #### 2. Base image
  42. ```bash
  43. docker build -f Dockerfile.windows --tag feather:win --build-arg THREADS=4 .
  44. ```
  45. Building the base image takes a while. You only need to build the base image once.
  46. #### 3. Build
  47. ```bash
  48. docker run --rm -it -v $PWD:/feather -w /feather feather:win sh -c 'make depends root=/depends target=x86_64-w64-mingw32 tag=win-x64 -j4'
  49. ```
  50. If you're re-running a build make sure to `rm -rf build/` first.
  51. The resulting binary can be found in `build/x86_64-w64-mingw32/release/bin/feather.exe`.
  52. ## macOS
  53. For MacOS it's easiest to leverage [brew](https://brew.sh) to install the required dependencies.
  54. ```bash
  55. HOMEBREW_OPTFLAGS="-march=core2" HOMEBREW_OPTIMIZATION_LEVEL="O0" \
  56. brew install boost zmq openssl libpgm miniupnpc libsodium expat libunwind-headers protobuf libgcrypt qrencode ccache cmake pkgconfig git
  57. ```
  58. Clone the repository.
  59. ```bash
  60. git clone --recursive https://git.featherwallet.org/feather/feather.git
  61. ```
  62. Get the latest LTS from here: https://www.qt.io/offline-installers and install.
  63. Build Feather.
  64. ```bash
  65. CMAKE_PREFIX_PATH=~/Qt5.15.1/5.15.1/clang_64 make mac-release
  66. ```
  67. The resulting Mac OS application can be found `build/bin/feather.app` and will **not** have Tor embedded.