Skip to content

Instantly share code, notes, and snippets.

@surjikal
Last active June 14, 2024 19:07
Show Gist options
  • Save surjikal/aaf0729af90bdc83064b to your computer and use it in GitHub Desktop.
Save surjikal/aaf0729af90bdc83064b to your computer and use it in GitHub Desktop.
Compile OpenSSH Portable on OSX / MacOS
#!/usr/bin/env bash
brew install openssl
git clone git://anongit.mindrot.org/openssh.git
cd openssh
# The './configure' script does not exist, so we have to build it
autoreconf
mkdir dist
# Get the dir of the openssl install...
BREW_OPENSSL_DIR="$(brew --prefix openssl)"
# If you can't get the command above to work... try one of these:
# BREW_OPENSSL_DIR=/opt/homebrew/opt/openssl
# BREW_OPENSSL_DIR=/usr/local/opt/openssl
./configure \
--prefix="$(pwd)/dist" \
LDFLAGS="-L${BREW_OPENSSL_DIR}/lib" \
CPPFLAGS="-I${BREW_OPENSSL_DIR}/include"
make
@iamh2o
Copy link

iamh2o commented Aug 27, 2021

I needed a fresh install and brew was not working, nor manual normal building.

@oxtoacart
Copy link

This is great, thanks!

FYI for people on M1 Macs, homebrew installs in /opt/homebrew, so the configure command is slightly different:

./configure \
  --prefix="$(pwd)/dist" \
  LDFLAGS="-L/opt/homebrew/opt/openssl/lib" \
  CPPFLAGS="-I/opt/homebrew/opt/openssl/include"

@surjikal
Copy link
Author

surjikal commented Feb 1, 2024

@oxtoacart cool! Your comment gave me an idea... thank you!

gist updated to get the install location from brew, instead of hardcoding the path.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment