2014-03-24 7 views
2

Tor의 명령 줄 버전을 설치하려고합니다. Homebrew를 사용하여 실제로 이미 작성했지만 다음 알림을 제공합니다.Tor + Homebrew & Mavericks OpenSSL

[notice] Your OpenSSL version seems to be 0.9.8y. We recommend 1.0.0 or later. 

그래서 OpenSSL을 업데이트했습니다. openssl version은 이제 1.0.1f으로 산출됩니다.

터미널에서 which openssl을 실행하면 /usr/local/bin/openssl과 함께 반환됩니다. 터미널에서 which tor을 실행하면 /usr/local/bin/tor과 함께 반환됩니다.

그래서 Tor가 업데이트 된 OpenSSL 버전을보고 있지 않은 이유는 무엇입니까?

답변

0

Tor를 Homebrew를 통해 제거하고 Homebrew를 통해 다시 설치했습니다. Tor를 설치하기 전에 $ PATH를 설정해야했습니다. 이렇게하면 내 문제가 해결되었습니다.

0

왜 Tor가 업데이트 된 OpenSSL 버전을보고 있지 않습니까?

맥 OS X만큼이 /usr/lib에서 0.9.8를로드 할 수있는만큼 수행합니다

$ find /usr/ -iname libssl* 
/usr//lib/libssl.0.9.7.dylib 
/usr//lib/libssl.0.9.8.dylib 
/usr//lib/libssl.dylib 

LD_PRELOAD은 맥 OS X (IIRC)에 이행되지 않습니다. DYLD_LIBRARY_PATH을 사용해보세요. 그러나 Tor가 0.9.1이 아닌 1.0.1과 연결되어 있는지 확인하십시오. 그렇지 않으면 모호한 오류를 포착하게됩니다.


나는 그것을가/usr/local/bin/토르와 반환 터미널에있는 토르 실행

당신은 토르 자신을 구축 했

? 직접 작성한 경우 Apple의 링커와 관련하여 현장에서 몇 가지 메모를 제공합니다. (1) 그들은 자동으로 rpath을 무시합니다. (2) 그들은 -Bstatic과 같은 요청을 자동으로 무시합니다. (3)보다 일반적으로, 공유 객체는 사용 가능한 경우 공유 객체에 항상 링크됩니다 (iOS에서 사용하는 유일한 객체는 아카이브 임). (4) LD_PRELOAD는 받아 들여지지 않습니다.

OpenSSL에 연결하려면 계속 /usr/local/ssl/에 접속해야합니다. 내가 찾은 최선의 방법은 -L을 제거하고 -lssl을 제거하고 makefile에서 -lcrypto을 제거하는 것입니다. 정적 아카이브의 전체 경로 이름을 /usr/local/ssl/lib/libssl.a/usr/local/ssl/lib/libcrypto.a에 추가하십시오.