Pre-built static OpenSSL binaries for macOS, Linux, Windows, and FreeBSD — automatically published whenever a new stable upstream release appears.
No shared library dependencies. Drop libssl.a + libcrypto.a and the
include/openssl/ headers into your project and link.
See the Releases page for the latest builds.
| Platform | Architecture | Notes |
|---|---|---|
| macOS | arm64 | Apple Silicon |
| macOS | x86_64 | Intel |
| macOS | universal | Fat binary (arm64 + x86_64 via lipo) |
| Linux | x86_64 | Built with musl libc — no glibc dependency |
| Linux | aarch64 | Built with musl libc — no glibc dependency |
| Windows | x86_64 | Cross-compiled with mingw-w64 |
| Windows | x86 | Cross-compiled with mingw-w64 (32-bit, for industrial/embedded) |
| FreeBSD | x86_64 | Native clang build |
| FreeBSD | arm64 |
Each archive (.tar.gz / .zip) contains:
lib/
libssl.a
libcrypto.a
include/
openssl/
*.h
bin/
openssl (openssl.exe on Windows)
BUILD_INFO.txt — compiler, configure flags, build host, date
Every release includes a SHA256SUMS.txt covering all artifacts.
# Linux / FreeBSD
sha256sum -c SHA256SUMS.txt
# macOS
shasum -a 256 -c SHA256SUMS.txtIndividual .sha256 sidecar files are also provided per archive.
A scheduled workflow runs daily at 06:00 UTC. It checks the
openssl/openssl GitHub releases for
a new stable version (non-prerelease, tag matching openssl-X.Y.Z). When a new
version is found it automatically triggers the build pipeline and publishes a
release here.
You can also trigger a build manually from the Actions tab.
All builds run in CI — no local setup required for automated releases.
| Job | Runner | Method |
|---|---|---|
| macOS arm64 + x86_64 + universal | macos-14 |
Native Apple clang |
| Linux x86_64 musl | ubuntu-latest |
Alpine 3.21 Docker container |
| Linux aarch64 musl | ubuntu-latest |
Alpine 3.21 via QEMU |
| Windows x86_64 | ubuntu-latest |
mingw-w64 cross-compile |
| Windows x86 | ubuntu-latest |
mingw-w64 cross-compile |
| FreeBSD x86_64 / arm64 | ubuntu-latest |
cross-platform-actions FreeBSD 14.2 |
Use scripts/build-local.sh to build locally.
# Install prerequisites
xcode-select --install
brew install nasm perl make mingw-w64
# Docker Desktop is used for Linux musl builds
# Build everything
./scripts/build-local.sh 3.4.1
# Build a specific target
./scripts/build-local.sh 3.4.1 macos-arm64
./scripts/build-local.sh 3.4.1 macos-universal
./scripts/build-local.sh 3.4.1 linux-x86_64
./scripts/build-local.sh 3.4.1 windows-x86_64Artifacts land in dist/.
If you move the build host to FreeBSD, install these packages:
pkg install -y gmake perl5 nasm mingw-w64 devel/github-cliFreeBSD can build: FreeBSD targets (natively), Linux targets (cross or Docker), Windows targets (mingw-w64).
Note: macOS artifacts require Apple's SDK and must continue to be built on a macOS host (GitHub Actions
macos-14runner or a Mac build machine).
- All artifacts are built from the official openssl/openssl source releases.
- Source tarballs are verified against upstream SHA256 checksums before building.
- Build metadata (
BUILD_INFO.txt) inside each archive records the exact compiler version, configure flags, and build date for auditability. SHA256SUMS.txtin each GitHub Release covers all artifacts.