2016-06-18 2 views
0

lstdC++에서 실패 ... 내가하기 위해 노력하고있어엘 캐피에 보석 네이티브 확장을 빌드 할 수 없습니다 - 내가하지만 지금까지 빈손으로 올라와있다이 어떤 솔루션을 인터넷을 수색 지난 시간을 보냈어요

을 taglib-ruby라는 gem을 설치하십시오.이 라이브러리는 gcc 및 Xcode 명령 행 도구로 간주되는 C++ 컴파일러와 homebrew를 사용하여 설치 한 taglib (C++ 라이브러리)에 종속되어 있습니다. 그러나 lstdC++를 찾지 못하기 때문에 그것을 포함하려고 시도하는 것만 큼 멀리있는 것처럼 보입니다.

OSX El Capitan (10.11)에서이 작업을 수행하려고합니다.

누군가이 종속성이 무엇이며 설치 방법을 말해 줄 수 있습니까?

$ gem install taglib-ruby 
Building native extensions. This could take a while... 
ERROR: Error installing taglib-ruby: 
    ERROR: Failed to build gem native extension. 

    /usr/local/rvm/rubies/ruby-1.9.3-p194/bin/ruby -r ./siteconf20160618-66149-xswlyl.rb extconf.rb 
checking for main() in -lstdc++... *** extconf.rb failed *** 
Could not create Makefile due to some reason, probably lack of 
necessary libraries and/or headers. Check the mkmf.log file for more 
details. You may need configuration options. 

Provided configuration options: 
    --with-opt-dir 
    --with-opt-include 
    --without-opt-include=${opt-dir}/include 
    --with-opt-lib 
    --without-opt-lib=${opt-dir}/lib 
    --with-make-prog 
    --without-make-prog 
    --srcdir=. 
    --curdir 
    --ruby=/usr/local/rvm/rubies/ruby-1.9.3-p194/bin/ruby 
    --with-tag-dir 
    --without-tag-dir 
    --with-tag-include 
    --without-tag-include=${tag-dir}/include 
    --with-tag-lib 
    --without-tag-lib=${tag-dir}/lib 
    --with-stdc++lib 
    --without-stdc++lib 
/usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:381:in `try_do': The compiler failed to generate an executable file. (RuntimeError) 
You have to install development tools first. 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:461:in `try_link0' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:476:in `try_link' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:619:in `try_func' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:845:in `block in have_library' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:790:in `block in checking_for' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:284:in `block (2 levels) in postpone' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:254:in `open' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:284:in `block in postpone' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:254:in `open' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:280:in `postpone' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:789:in `checking_for' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:840:in `have_library' 
    from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/taglib-ruby-0.7.1/ext/extconf_common.rb:28:in `<top (required)>' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:54:in `require' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:54:in `require' 
    from extconf.rb:2:in `<main>' 

extconf failed, exit code 1 

Gem files will remain installed in /usr/local/rvm/gems/ruby-1.9.3-p194/gems/taglib-ruby-0.7.1 for inspection. 
Results logged to /usr/local/rvm/gems/ruby-1.9.3-p194/extensions/x86_64-darwin-11/1.9.1/taglib-ruby-0.7.1/gem_make.out 

답변

0

오류 메시지가이 안에있다 :

/usr/local/rvm/rubies/ruby-1.9.3-p194/ 

루비의 꽤 이전 버전의

아래 콘솔 출력을 참조하십시오. rvm을 사용하여 최신 버전의 루비를 설치하십시오 :

$ rvm install 2.3.1 

그런 다음 다시 설치하십시오.

당신은 당신이 터미널을 열 때 기본 루비의 버전을 확인하려면 :

$ rvm --default use 2.3.1 

편집 : 흠 ... OSX 10.10.5에, 나는 $ brew install taglib을 할 수 있었다 다음 성공적으로 설치 보석 $ gem install taglib-ruby 루비 -1.9.3-p194 및 루비 -2.3.0. 전체 Xcode가 설치되어 있습니다 (Xcode 7.2.1). 귀하의 Xcode 명령 줄 도구가 귀하의 루비 버전만큼 심각하게 구식인지 궁금합니다. 시도해 볼 수 있습니다 :

$ pkgutil --pkg-info=com.apple.pkg.CLTools_Executables 

Xcode 명령 줄 도구의 버전을 얻으려면 시도하십시오.

rvm, ruby, homebrew 및 Xcode 명령 줄 도구를 업데이트해야 할 수도 있습니다.