2012-02-25 1 views
3

지금 당장 넘어졌습니다. 이것은 내가 점점 계속 오류 (내가 최근에 스노우 레오파드에 레오파드에서 내 OSX를 업그레이드 한)입니다 :Snow Leopard의 RVM : 1.8.7을 설치할 수 있지만 1.9.3 또는 1.9.2는 설치할 수 없습니다 (건축 문제 일 수 있습니까?)

ld: in /usr/local/lib/libxml2.2.dylib, file was built for i386 which is not the architecture being linked (x86_64) 

봤 또한이 사이트를 검색 :

redacted's Mac[~]$ rvm install 1.9.3 
Fetching yaml-0.1.4.tar.gz to /Users/redacted/.rvm/archives 
Extracting yaml-0.1.4.tar.gz to /Users/redacted/.rvm/src 
Configuring yaml in /Users/redacted/.rvm/src/yaml-0.1.4. 
Compiling yaml in /Users/redacted/.rvm/src/yaml-0.1.4. 
Installing yaml to /Users/redacted/.rvm/usr 
Installing Ruby from source to: /Users/redacted/.rvm/rubies/ruby-1.9.3-p125, this may take a while depending on your cpu(s)... 

ruby-1.9.3-p125 - #fetching 
ruby-1.9.3-p125 - #extracted to /Users/redacted/.rvm/src/ruby-1.9.3-p125 (already extracted) 
ruby-1.9.3-p125 - #configuring 
ruby-1.9.3-p125 - #compiling 
Error running 'make ', please read /Users/redacted/.rvm/log/ruby-1.9.3-p125/make.log 
There has been an error while running make. Halting the installation. 

로그에 보면,이 이것이다

1) Xcode를 3.2.6으로 업데이트 (Snow Leopard에 있음). 이것은 설치 DVD의 Xcode와 같은 버전이 아닙니다.

2) 내 MacPort 물건은 이전에 어디 완전히 삭제/옵션/지역 포함) 여기 http://www.libertypages.com/clarktech/?p=743 절차에 따라 MacPorts의 모든 흔적을 (제거

3) 완전히 여기에 절차 당 (RVM의 모든 흔적을 제거 How can I remove RVM (Ruby Version Manager) from my system?)

4) 스노우 레오파드 (Snow Leopard)에 대한 MacPorts를 설치하고,

5) sudo는 포트 libxml2를의 libxslt를 (나는 그것을 x86_64의 아키텍처를 사용하고있는 것으로 나타납니다 확인 설치하고 Selfupdate -v sudo는 포트를 실행 - 여기가 libxml2를 위해 어떻게 생겼는지입니다 :

01 이 시점에서

7 RVM

)를 설치 23,516,
---> Computing dependencies for libxml2 
---> Dependencies to be installed: zlib 
---> Fetching archive for zlib 
---> Attempting to fetch zlib-1.2.6_0.darwin_10.x86_64.tbz2 from http://packages.macports.org/zlib 
---> Attempting to fetch zlib-1.2.6_0.darwin_10.x86_64.tbz2.rmd160 from http://packages.macports.org/zlib 
---> Installing zlib @1.2.6_0 
---> Activating zlib @1.2.6_0 
---> Cleaning zlib 
---> Fetching archive for libxml2 
---> Attempting to fetch libxml2-2.7.8_0.darwin_10.x86_64.tbz2 from http://packages.macports.org/libxml2 
---> Attempting to fetch libxml2-2.7.8_0.darwin_10.x86_64.tbz2.rmd160 from http://packages.macports.org/libxml2 
---> Installing libxml2 @2.7.8_0 
---> Activating libxml2 @2.7.8_0 
---> Cleaning libxml2 

6), 내 라이브러리 파일, RVM, MacPorts를, 엑스 코드는 최신의 정확한 구조를 것 같다

1.8.7가 성공적으로 설치 8) RVM

9) rvm install 1.9.2 및 1.9.3이 실패하고이 질문의 시작 부분에 오류 메시지가 표시됩니다.

내가 놓친 아이디어가 있습니까? 이 여전히 MacPorts를가 x86_64의 버전을 설치 한 것 같다 때 libxml2를가 I386이라고 생각하는 것이 ... 홀수 중요한 경우

file /usr/local/lib/libxml2.2.dylib 

/usr/local/lib/libxml2.2.dylib: Mach-O dynamically linked shared library i386 

확실하지 :이 동안 읽고 기사에서 다양한 일을 시도 주위를 파고 나타났습니다.

->이 게시물을 게시 한 후 약 21 분 후 편집 - 사실, macport 파일이 64 비트라고 생각합니다. 라이브러리 파일 경로가 잘못 설정되어 있으므로 rvm이 1.9.2를 설치하려고합니다. /1.9.3? 여기

file /opt/local/lib/libxml2.2.dylib 
/opt/local/lib/libxml2.2.dylib: Mach-O 64-bit dynamically linked shared library x86_64 

내 PATH입니다 (아래 참조) :

redacted's Mac[~]$ echo $PATH 
/opt/local/bin:/opt/local/sbin:/usr/local/mysql/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11/bin:/Users/redacted/.rvm/bin 

RVM 정보 :

system: 

    system: 
    uname:  "Darwin redacted-macbook-pro.local 10.8.0 Darwin Kernel Version 10.8.0: Tue Jun 7 16:33:36 PDT 2011; root:xnu-1504.15.3~1/RELEASE_I386 i386" 
    bash:  "/bin/bash => GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin10.0)" 
    zsh:   "/bin/zsh => zsh 4.3.9 (i386-apple-darwin10.0)" 

    rvm: 
    version:  "rvm 1.10.3 by Wayne E. Seguin <[email protected]>, Michal Papis <[email protected]> [https://rvm.beginrescueend.com/]" 
    updated:  "3 hours 26 minutes 47 seconds ago" 

    homes: 
    gem:   "not set" 
    ruby:   "not set" 

    binaries: 
    ruby:   "/usr/local/bin/ruby" 
    irb:   "/usr/local/bin/irb" 
    gem:   "/usr/local/bin/gem" 
    rake:   "/usr/local/bin/rake" 

    environment: 
    PATH:   "/opt/local/bin:/opt/local/sbin:/usr/local/mysql/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11/bin:/Users/redacted/.rvm/bin" 
    GEM_HOME:  "" 
    GEM_PATH:  "" 
    MY_RUBY_HOME: "" 
    IRBRC:  "" 
    RUBYOPT:  "" 
    gemset:  "" 

방법이 시점에서 진행하는 아무 생각; 기본적으로 모든 것을 제거하고 다시 설치해 두 번 사용할 수 없습니다.

-> 편집 : 문제는 당신 만 PATH 변수를 설정하는 스티브

[2012-02-24 22:54:41] make 
    CC = /usr/bin/gcc-4.2 
    LD = ld 
    LDSHARED = /usr/bin/gcc-4.2 -dynamiclib 
    CFLAGS = -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=shorten-64-to-32 -Werror=implicit-function-declaration -fno-common -pipe 
    XCFLAGS = -include ruby/config.h -include ruby/missing.h -fvisibility=hidden -DRUBY_EXPORT 
    CPPFLAGS = -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -I. -I.ext/include/x86_64-darwin10.8.0 -I./include -I. 
    DLDFLAGS = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -Wl,-flat_namespace -install_name /Users/craigflannagan/.rvm/rubies/ruby-1.9.3-p125/lib/libruby.1.9.1.dylib -current_version 1.9.1 -compatibility_version 1.9.1 -Wl,-unexported_symbol,_Init_* -Wl,-unexported_symbol,*_threadptr_* -Wl,-u,_objc_msgSend 
    SOLIBS = 
linking miniruby 
rbconfig.rb unchanged 
generating enc.mk 
generating prelude.c 
compiling prelude.c 
linking static-library libruby.1.9.1-static.a 
linking shared-library libruby.1.9.1.dylib 
generating encdb.h 
encdb.h unchanged 
making enc 
make[1]: Nothing to be done for `enc'. 
making srcs under enc 
make[1]: Nothing to be done for `srcs'. 
generating transdb.h 
transdb.h unchanged 
making trans 
make[1]: Nothing to be done for `./enc/trans'. 
making encs 
installing default bug libraries 
installing default resize libraries 
installing default bug libraries 
installing default bug libraries 
installing default funcall libraries 
installing default dot.dot libraries 
installing default old_thread_select libraries 
installing default numhash libraries 
installing default string libraries 
installing default wait_for_single_fd libraries 
installing default bigdecimal libraries 
installing default continuation libraries 
installing default coverage libraries 
installing default curses libraries 
installing default date_core libraries 
make[2]: Nothing to be done for `all'. 
installing digest libraries 
installing default digest libraries 
installing default bubblebabble libraries 
installing default md5 libraries 
installing default rmd160 libraries 
installing default sha1 libraries 
installing default sha2 libraries 
installing dl libraries 
installing default dl libraries 
installing default callback libraries 
make[2]: Nothing to be done for `all'. 
installing default etc libraries 
installing default fcntl libraries 
installing default fiber libraries 
installing default fiddle libraries 
make[2]: Nothing to be done for `all'. 
installing default iconv libraries 
installing default console libraries 
installing default nonblock libraries 
installing default wait libraries 
installing default libraries 
installing default generator libraries 
installing default parser libraries 
installing default complex libraries 
installing default rational libraries 
installing default nkf libraries 
installing default objspace libraries 
installing default openssl libraries 
installing default pathname libraries 
installing default psych libraries 
installing default pty libraries 
installing default cparse libraries 
installing default readline libraries 
installing default ripper libraries 
checking ../.././parse.y and ../.././ext/ripper/eventids2.c 
installing default sdbm libraries 
installing default socket libraries 
installing default stringio libraries 
installing default strscan libraries 
installing default syck libraries 
installing default syslog libraries 
linking shared-object tcltklib.bundle 
ld: in /usr/local/lib/libxml2.2.dylib, file was built for i386 which is not the architecture being linked (x86_64) 
collect2: ld returned 1 exit status 
make[2]: *** [../../.ext/x86_64-darwin10.8.0/tcltklib.bundle] Error 1 
make[1]: *** [ext/tk/all] Error 2 
make: *** [build-ext] Error 2 
+0

이 좋은 질문하지 OSX-GCC-설치

적절한 루비 설치를 위해 필요한 사항에 대한 자세한 내용은 rvm requirements을 읽어 보시기 바랍니다에게 이전의 엑스 코드를 제거하고 설치 엑스 코드 4.1 또는 사용 업데이트해야 stackoverflow에 대한. 대신 http://serverfault.com에 게시해야합니다. –

+0

당신은 맞을지 모르겠지만, 왜이 질문이 서버와 관련이 없든, 내 랩탑에 Ruby 버전을 설치하려고하는 것이므로 개발 노력을 재개 할 수 있습니다. –

+0

좋아, 아마도 나는 그 질문을 잘못 이해했다. 어쩌면이 stackoverflow에 대한 적합합니다. 소프트웨어 설치 문제와 관련해서는 회색 영역이라고 생각합니다. –

답변

0

이입니다 추가. 그러나이 환경 변수는 공유 라이브러리를 찾는 데 사용되지 않습니다. DYLD_LIBRARY_PATH 환경 변수를 설정해야합니다. 또한 '남자 dyld'을보십시오.

+0

유망한 소리 - 환경 변수를 어느 폴더로 지정해야합니까? 나는 "export DYLD_LIBRARY_PATH =/opt/local/lib"를 시도하고 "rvm install 1.9.3"을 시도 할 때 동일한 결과 (구조적 차이에 대해 불평 함)를 얻었습니다. –

+0

이론상으로 이것은 작동해야합니다. 메이크 파일이 하드 코딩 된 경로로 연결되어 있는지 궁금하네요. 해당 매개 변수와 함께 ld 명령을 게시 하시겠습니까? – steve

+0

귀하의 요청에 위의 원래 질문에 추가되었습니다 (댓글의 글자 수는 550 자 정도입니다). DYLD_LIBRARY_PATH를 설정 한 후에도 비 Macport 설치 libxml2 파일을 계속보고있는 것으로 보입니다. "rvm install 1.9.3"을 시도하기 전에 수정해야 할 것이 있습니까? –

0

당신은

+0

rvm 요구 사항 : "Darwin (Mac OS X)에 대한 참고 사항 Snow Leopard의 경우 : 3.2.6 또는 Xcode 4.1과 같은 Xcode 버전 3.2.1 (1613) 이상." 하지만 4.1은 필요하지 않습니다. 내가 업그레이드를 시도하기 전에 이것이 어떻게 내 문제를 해결할 수 있는지에 대한 설명을 원한다. -/usr/local/lib 디렉토리를/usr로 바꿔서 순환시키지 않으면 3.2.6을 사용해서 어떻게 작동시킬 수 있는지 알아보기 바란다. /local/lib.old. 4.1이/usr/local/lib의 내용을 업데이트하고 나에게 다시 작동하도록할까요? (필자는 업데이트 된 버전을 설치할 때 정확히 XCode가 내 파일/폴더에서 수정할 내용을 잘 모르고 있습니다.) –

+0

@CraigFlannagan Xcode 3.2.6은 여전히 ​​Ruby 1.8.6/7에서 작동 할 수 있습니다. 가능한 조합의 배열이 없습니다. 4.1과 함께 얻을 수있는 최상의 결과 만 headrd합니다. – mpapis