* linter * Add markdown linter * add env * only check markdown * Add token * Update .github/workflows/test-suite.yml * Markdown linter * Exit code * Update script * rename * mdlint * Add an empty line after end of file * Testing disable * add text * update mdlint.sh * ori validator inclusion * Add config yml file * Remove MD041 and fix advanced-datadir file * FIx validator inclusion file conflict * Merge branch 'unstable' into markdown-linter * change files * Merge branch 'markdown-linter' of https://github.com/chong-he/lighthouse into markdown-linter * mdlint * Remove MD025 * Remove MD036 * Remove MD045 * Removr MD001 * Set MD028 to false * Remove MD024 * Remove MD055 * Remove MD029 * Remove MD040 * Set MD040 to false * Set MD033 to false * Set MD013 to false * Rearrange yml file * Update mdlint.sh and test * Test remove fix * Test with fix * Test with space * Fix summary indentation * Test mdlint.sh * Update mdlint.sh * Test * Update * Test fix * Test again * Fix * merge into check-code * Update scripts/mdlint.sh Co-authored-by: Mac L <mjladson@pm.me> * Update scripts/mdlint.sh Co-authored-by: Mac L <mjladson@pm.me> * Remove set -e * Add comment * Merge pull request #7 from chong-he/unstable Merge unstable to markdown branch * mdlint * Merge branch 'unstable' into markdown-linter * mdlint
1.9 KiB
Cross-compiling
Lighthouse supports cross-compiling, allowing users to run a binary on one
platform (e.g., aarch64) that was compiled on another platform (e.g.,
x86_64).
Instructions
Cross-compiling requires Docker,
rustembedded/cross and for the
current user to be in the docker group.
The binaries will be created in the target/ directory of the Lighthouse
project.
Targets
The Makefile in the project contains four targets for cross-compiling:
build-x86_64: builds an optimized version for x86_64 processors (suitable for most users).build-x86_64-portable: builds a version for x86_64 processors which avoids using some modern CPU instructions that are incompatible with older CPUs.build-aarch64: builds an optimized version for 64-bit ARM processors (suitable for Raspberry Pi 4).build-aarch64-portable: builds a version for 64-bit ARM processors which avoids using some modern CPU instructions. In practice, very few ARM processors lack the instructions necessary to run the faster non-portable build.
For more information about optimized vs portable builds see Portability.
Example
cd lighthouse
make build-aarch64
The lighthouse binary will be compiled inside a Docker container and placed
in lighthouse/target/aarch64-unknown-linux-gnu/release.
Feature Flags
When using the makefile the set of features used for building can be controlled with
the environment variable CROSS_FEATURES. See Feature
Flags for available features.
Compilation Profiles
When using the makefile the build profile can be controlled with the environment variable
CROSS_PROFILE. See Compilation Profiles for
available profiles.