I uninstalled Tor via Homebrew and installed it again via Homebrew. I needed to have my $PATH set BEFORE I installed Tor. Doing this fixed my problem.
Tor + Homebrew & Mavericks OpenSSL
-
20-06-2023 - |
Question
I'm trying to install the command-line version of Tor. I have actually already done so using Homebrew, but it gives me the following notice:
[notice] Your OpenSSL version seems to be 0.9.8y. We recommend 1.0.0 or later.
So I updated OpenSSL. openssl version
now yields in 1.0.1f
.
When I run which openssl
in Terminal, it returns with /usr/local/bin/openssl
.
When I run which tor
in Terminal, it returns with /usr/local/bin/tor
.
So why isn't Tor seeing the updated version of OpenSSL?
Solution 2
OTHER TIPS
So why isn't Tor seeing the updated version of OpenSSL?
Mac OS X will do as much as it can to load 0.9.8 in /usr/lib
:
$ find /usr/ -iname libssl*
/usr//lib/libssl.0.9.7.dylib
/usr//lib/libssl.0.9.8.dylib
/usr//lib/libssl.dylib
LD_PRELOAD
is not honored on Mac OS X (IIRC). Try using DYLD_LIBRARY_PATH
. But be sure your Tor linked against 1.0.1, and not 0.9.8. Otherwise, you'll catch obscure errors that make no sense.
When I run which tor in Terminal, it returns with /usr/local/bin/tor
Did you build Tor yourself? If you built it yourself, then here's a few notes from the field with respect to Apple's linkers. (1) they silently ignore rpath
's. (2) they silently ignore requests like -Bstatic
. (3) more generally, they always link to the shared object if available (even on iOS where the only thing you are suppose to use is an archive). (4) LD_PRELOAD is not honored.
You have to be persistent to link to the OpenSSL in /usr/local/ssl/
. The best way I have found is to remove -L
, remove -lssl
and remove -lcrypto
from the makefiles; and add the full path names of the static archive at /usr/local/ssl/lib/libssl.a
and /usr/local/ssl/lib/libcrypto.a
.