From 10736eea5c5835d494a5f94c02a8cac5e9d345ba Mon Sep 17 00:00:00 2001 From: Zane Kharitonov Date: Fri, 17 Jul 2026 16:17:38 -0400 Subject: [PATCH 1/2] Document Intel vs Apple Silicon Homebrew paths in OSX-NOTES.md Homebrew installs to /usr/local on Intel Macs but /opt/homebrew on Apple Silicon, and OpenSSL is now a versioned keg (openssl@3). The configure example only showed the Intel paths, causing "Can't find OpenSSL headers" on Apple Silicon machines. Show both variants plus a portable brew --prefix form. Co-Authored-By: Claude Fable 5 --- OSX-NOTES.md | 41 ++++++++++++++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 5 deletions(-) diff --git a/OSX-NOTES.md b/OSX-NOTES.md index f1c7ee2eb..c89885ff5 100644 --- a/OSX-NOTES.md +++ b/OSX-NOTES.md @@ -48,8 +48,19 @@ Now we need to install some dependencies $ brew install cppunit $ brew install libtool -openssl, sqlite, and libtool are pre-installed on the system. The versions downloaded -by brew are stored in an alternative location under /usr/local +openssl, sqlite, and libtool are pre-installed on the system. The versions +downloaded by brew are stored in an alternative location, which differs by +CPU architecture: + + - Intel Macs: /usr/local + - Apple Silicon Macs (M1 and later): /opt/homebrew + +In addition, recent versions of Homebrew install OpenSSL as a versioned keg +named openssl@3 rather than plain openssl. You can always find the correct +path for your machine with: + + $ brew --prefix openssl@3 + $ brew --prefix sqlite The only brew warning of note is for libtool: @@ -86,10 +97,30 @@ options available for building issue the following command: In the example below I will enable the optional token object store database backend. +The paths to the Homebrew libraries depend on your CPU architecture (see the +Homebrew section above). On an Intel Mac: + $ ./configure --with-objectstore-backend-db \ - --with-openssl=/usr/local/opt/openssl \ + --with-openssl=/usr/local/opt/openssl@3 \ --with-sqlite3=/usr/local/opt/sqlite +On an Apple Silicon Mac: + + $ ./configure --with-objectstore-backend-db \ + --with-openssl=/opt/homebrew/opt/openssl@3 \ + --with-sqlite3=/opt/homebrew/opt/sqlite + +Alternatively, the following form works on both architectures: + + $ ./configure --with-objectstore-backend-db \ + --with-openssl=$(brew --prefix openssl@3) \ + --with-sqlite3=$(brew --prefix sqlite) + +If configure fails with "Can't find OpenSSL headers", double-check that the +path passed to --with-openssl actually contains include/openssl/ssl.h. A +common cause is using the /usr/local paths from an older version of these +notes on an Apple Silicon machine. + Now if for some reason the compilers are not found, do the following at the command line. @@ -97,8 +128,8 @@ command line. $ export CPP="xcrun cpp" $ export CXX="xcrun g++" $ ./configure --with-objectstore-backend-db \ - --with-openssl=/usr/local/opt/openssl \ - --with-sqlite3=/usr/local/opt/sqlite + --with-openssl=$(brew --prefix openssl@3) \ + --with-sqlite3=$(brew --prefix sqlite) By exporting these environment variables we are instructing configure to use the compilers stored inside the installed XCode.app. From f0e331f6286adbdd6f4074abcde0eb5d5d2b61cb Mon Sep 17 00:00:00 2001 From: Jakob Schlyter Date: Sat, 18 Jul 2026 08:42:27 +0200 Subject: [PATCH 2/2] Update OSX-NOTES.md Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- OSX-NOTES.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OSX-NOTES.md b/OSX-NOTES.md index c89885ff5..26f2779fe 100644 --- a/OSX-NOTES.md +++ b/OSX-NOTES.md @@ -59,8 +59,8 @@ In addition, recent versions of Homebrew install OpenSSL as a versioned keg named openssl@3 rather than plain openssl. You can always find the correct path for your machine with: - $ brew --prefix openssl@3 - $ brew --prefix sqlite + brew --prefix openssl@3 + brew --prefix sqlite The only brew warning of note is for libtool: