2012-09-07 8 views
4

"Ruby를 어렵게 배웁니다"과정을 수행 할 수 있도록 Ruby를 설치하려고하는데 많은 문제가있었습니다.마운틴 라이온 w/RVM에 Ruby 1.9.3을 설치할 수 없습니다. 실행 중 오류가 발생했습니다.

compiling md5ossl.c 
linking shared-object digest/md5.bundle 
ld: in /usr/local/lib/libz.1.dylib, file was built for unsupported file format (0xce 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 0 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0) which is not the architecture being linked (x86_64): /usr/local/lib/libz.1.dylib for architecture x86_64 
collect2: ld returned 1 exit status 
make[2]: *** [../../../.ext/x86_64-darwin12.1.0/digest/md5.bundle] Error 1 
make[1]: *** [ext/digest/md5/all] Error 2 
make: *** [build-ext] Error 2 
내가 주변에 인터넷 검색과 동일한 문제처럼 보이는이 게시물을 발견

: 루비

의 최신 버전 여기

를 설치하면 내 로그의 관련 부분 Cannot install Ruby 1.9.3 on Mountain Lion w/ Jewlery Box: Error running make -j4 (have current readline, gcc)

을하지만 대답은 거기있다 모호한 "update libz lib". 그게 무슨 뜻인지 모르겠다. 나는 주위를 둘러 보았고 zlib를 발견했다. 그러나 이것들이 libz와 같은지 모르겠다. 또한 libz가 libtool임을 나타내는 또 다른 게시물을 발견했습니다. libtool 버전은 Apple Inc. 버전 cctools-829이지만 libtool은 libz와 동일한 것입니까? 나는 이전에이 용어를 본 적이 없거나 이전에 Ruby를 사용 했었지만 완전히 혼란 스럽다.

나는 gcc 4.2.1과 xcode 4.4.1을 가지고있다. 어떤 도움을 주셔서 감사합니다, 이것은 여기에 내 첫 게시물이므로 친절하게도 내가 잘못했거나 더 많은 정보를 제공 해야할지 알려주십시오. 타이틀을 어떻게 포맷하는지에 대해 확신하지 못했기 때문에 기본적으로 연결된 타이틀에서 내 타이틀을 훔쳤습니다.

+0

예, zlib와 libz는 같은 것입니다. –

답변

1

참고로 OS X은 /usr/local/lib 또는 /usr/local/bin에 아무 것도 넣지 않으므로 실수로 무언가를 설치해야합니다.

rvm 또는 rbenv과 같은 Ruby 관리자를 사용하는 경우이 프로세스에 도움이되는 특수 빌드 도구가 있습니다. 올바른 패치가 Ruby뿐만 아니라 libz 같은 종속성에 적용되기 때문에 소스에서 설치하는 것보다 훨씬 쉽습니다.

컴퓨터에 잘못된 아키텍처 용으로 컴파일 된 라이브러리가있을 수 있습니다. 이 버전은 이전 PowerPC 설치 또는 10.5 이전의 OS X 버전의 Intel 32 비트 버전에서 롤오버되었을 수 있습니다.

/usr/local/lib/libz*을 제거하고 대신 OS와 함께 제공되는 것을 사용하는 것이 가장 좋습니다. 작동 할 수있는 /usr/lib/libz*에 필요한 파일 세트가 있어야합니다.

+1

"file /usr/local/lib/libz.1.dylib"쉘에서 file 명령을 실행하여 컴파일 된 아키텍처를 쉽게 확인할 수도 있습니다. – sunkencity