簡體   English   中英

Gem::Ext::BuildError: 錯誤:無法在 mac 上構建 gem 本機擴展。 無法安裝 racc

[英]Gem::Ext::BuildError: ERROR: Failed to build gem native extension on mac. unable to install racc

安裝帶有本機擴展的 racc 1.5.2
Gem::Ext::BuildError:錯誤:無法構建 gem 本機擴展。

current directory: /Library/Ruby/Gems/2.6.0/gems/racc-1.5.2/ext/racc/cparse   

/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby -I

/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0 -r

./siteconf20210323-1013-1j708gz.rb extconf.rb

檢查 rb_ary_subseq()... *** extconf.rb 失敗 ***

由於某些原因無法創建 Makefile,可能是缺少必要的

庫和/或標題。 檢查 mkmf.log 文件以獲取更多詳細信息。 您可能需要配置選項。

提供的配置選項:--with-opt-dir --without-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=/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/$(RUBY_BASE_NAME)

/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:467:in `try_do': 編譯器未能生成可執行文件。 (運行時錯誤)

您必須先安裝開發工具。

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:546:in `block in try_link0'

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/tmpdir.rb:93:in`mktmpdir'

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:543:in`try_link0'

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:570:in`try_link'

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:782:in`try_func'

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:1069:in`block in have_func'

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:959:in`block in checking_for'

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:361:in`block (2 levels) in postpone'

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:331:in`open'

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:361:in`block in postpone'

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:331:in`open'

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:357:in`postpone'

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:958:in`checking_for'

來自/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:1068:in`have_func'

來自 extconf.rb:6:in `'

要了解此擴展編譯失敗的原因,請查看可在此處找到的 mkmf.log:

/Library/Ruby/Gems/2.6.0/extensions/universal-darwin-19/2.6.0/racc-1.5.2/mkmf.log

extconf 失敗,退出代碼 1

Gem 文件將保留安裝在 /Library/Ruby/Gems/2.6.0/gems/racc-1.5.2 中以供檢查。

結果記錄到 /Library/Ruby/Gems/2.6.0/extensions/universal-darwin-19/2.6.0/racc-1.5.2/gem_make.out

安裝racc(1.5.2)時出錯,Bundler無法繼續。

確保gem install racc -v '1.5.2' --source 'https://rubygems.org/'在捆綁之前成功。

Gemfile中:rails被解析為6.1.3,依賴actioncable被解析為6.1.3,依賴actionpack被解析為6.1.3,依賴actionview被解析為6.1.3,依賴rails-dom -testing 被解析為 2.0.3,這取決於 nokogiri 被解析為 1.11.2,這取決於 racc

gem racc 具有以下依賴項:

 *  Ruby 1.8.x or later.
(*) make and C compiler.

請參閱:寶石文檔

所以我的猜測是其中任何一個都沒有正確安裝在您的機器上。

  1. ruby -v有效嗎?
  2. make -v有效嗎?
  3. gcc -v有效嗎?

要安裝 ruby,您可能需要查看 rbenv ( https://github.com/rbenv/rbenv ) 要安裝 make 和 gcc,只需運行:

xcode-select --install

自己也有這個問題。 您只需要更新 Mac 的 CommandLineTools。

在我的根中運行此代碼修復它:

xcode-select --install

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM