* 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
3.2 KiB
Pre-built Binaries
Each Lighthouse release contains several downloadable binaries in the "Assets" section of the release. You can find the releases on Github.
Platforms
Binaries are supplied for four platforms:
x86_64-unknown-linux-gnu: AMD/Intel 64-bit processors (most desktops, laptops, servers)aarch64-unknown-linux-gnu: 64-bit ARM processors (Raspberry Pi 4)x86_64-apple-darwin: macOS with Intel chipsx86_64-windows: Windows with 64-bit processors
Additionally there is also a -portable suffix which indicates if the portable feature is used:
- Without
portable: uses modern CPU instructions to provide the fastest signature verification times (may causeIllegal instructionerror on older CPUs) - With
portable: approx. 20% slower, but should work on all modern 64-bit processors.
For details, see Portability.
Usage
Each binary is contained in a .tar.gz archive. For this example, lets assume the user needs
a x86_64 binary.
Steps
-
Go to the Releases page and select the latest release.
-
Download the
lighthouse-${VERSION}-x86_64-unknown-linux-gnu.tar.gzbinary. For example, to obtain the binary file for v4.0.1 (the latest version at the time of writing), a user can run the following commands in a linux terminal:cd ~ curl -LO https://github.com/sigp/lighthouse/releases/download/v4.0.1/lighthouse-v4.0.1-x86_64-unknown-linux-gnu.tar.gz tar -xvf lighthouse-v4.0.1-x86_64-unknown-linux-gnu.tar.gz -
Test the binary with
./lighthouse --version(it should print the version). -
(Optional) Move the
lighthousebinary to a location in yourPATH, so thelighthousecommand can be called from anywhere. For example, to copylighthousefrom the current directory tousr/bin, runsudo cp lighthouse /usr/bin.
Windows users will need to execute the commands in Step 2 from PowerShell.
Portability
Portable builds of Lighthouse are designed to run on the widest range of hardware possible, but sacrifice the ability to make use of modern CPU instructions.
If you have a modern CPU then you should try running a non-portable build to get a 20-30% speed up.
- For x86_64, any CPU supporting the ADX instruction set extension is compatible with the optimized build. This includes Intel Broadwell (2014) and newer, and AMD Ryzen (2017) and newer.
- For ARMv8, most CPUs are compatible with the optimized build, including the Cortex-A72 used by the Raspberry Pi 4.
Troubleshooting
If you get a SIGILL (exit code 132), then your CPU is incompatible with the optimized build
of Lighthouse and you should switch to the -portable build. In this case, you will see a
warning like this on start-up:
WARN CPU seems incompatible with optimized Lighthouse build, advice: If you get a SIGILL, please try Lighthouse portable build
On some VPS providers, the virtualization can make it appear as if CPU features are not available, even when they are. In this case you might see the warning above, but so long as the client continues to function, it's nothing to worry about.