On 1/23/2012 6:55 PM, Geoff Down wrote:
On Mon, Jan 23, 2012, at 06:24 PM, Justin Aplin wrote:
On 1/23/2012 2:56 PM, Geoff Down wrote:
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: Undefined symbols: _EVP_sha256 _RSA_generate_key_ex _SHA256 _SHA256_Final _SHA256_Init _SHA256_Update _CRYPTO_ctr128_encrypt collect2: ld returned 1 exit status make[4]: *** [tor-gencert] Error 1 make[3]: *** [all-recursive] Error 1 make[2]: *** [all-recursive] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [all] Error 2
Do you have the 10.4u sdk installed? You might try something like the following (with changes to the directories as necessary): CFLAGS="-O -g -mmacosx-version-min=10.4 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc" \ LDFLAGS="-Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk" \ ./configure --with-libevent-dir=/opt/local/lib/ --disable-dependency-tracking CC="gcc-4.0"
Of course, that sets you back to using the sdk-packaged version of OpenSSL, but if it builds at least that's progress. Also, if you haven't built libevent yourself, I'd try doing that, with the following flags (again, with directory changes as necessary): CFLAGS="-O -g -mmacosx-version-min=10.4 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc" \ LDFLAGS="-Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk" \ ./configure --enable-static --disable-shared --disable-dependency-tracking CC="gcc-4.0"
and seeing if that makes any difference.
Personally, on my OSX 10.4.11 ppc node (Japnonymous) I don't use the sdk, but then, I build static versions of libevent, openssl, and libz myself and do a "mostly-static" build of tor. Everything's been building fine for me so far.
Hi Justin, I do have MacOSX10.4u.sdk in /Developer/SDKs/ (whatever that is). Running your first test above (with libevent-dir=/opt/local/ not /opt/local/lib) does get through to the end without an 'error' (assuming 'configure: Transparent proxy support enabled, but missing headers' isn't an error). I did 'install' the latest openssl using Macports, that generated a binary that I moved to /usr/bin. But as far as I can see 'installing' libevent 2 didn't produce a binary (even though there was a 'building' message at one point). What's the next step? GD
I'm kind of flying in the dark here (being unfamiliar with macports), but I think a proper --with-openssl-dir= statement will help. Run "openssl version -a", check the version number to make sure it's the new version and not the packaged one, and put the output of the OPENSSLDIR field in as an argument. So you'd end up with something like:
CFLAGS="-O -g -mmacosx-version-min=10.4 -arch ppc" \ ./configure --with-libevent-dir=/opt/local --with-openssl-dir=/path/to/openssldir --disable-dependency-tracking CC="gcc-4.0"
We won't bother with the sdk bits, since that will (by definition) use the old libs, instead of the ones you're aiming for. I think what's happening is the build/test process is using the new openssl binary with the old libs, or missing out on the openssl libs completely.
~Japlin