2016-03-02 56 views
2

我一直在试图安装gem,therubyracer与OS X El Capitan for a Rails应用程序的Mac上,但我不断收到与-rdynamic标志关联的错误,从而导致无法构建本机扩展。由于mac上的编译器问题而无法安装therubyracer gem?

Amory:coursequestionbank masonscott$ gem install therubyracer 
Building native extensions. This could take a while... 
ERROR: Error installing therubyracer: 
ERROR: Failed to build gem native extension. 

/Users/masonscott/.rvm/rubies/ruby-2.2.1/bin/ruby -r ./siteconf20160301-14168-1g6b007.rb extconf.rb 
checking for main() in -lpthread... yes 
checking for main() in -lobjc... yes 
creating Makefile 

make "DESTDIR=" clean 

make "DESTDIR=" 
compiling accessor.cc 
g++: error: unrecognized command line option '-rdynamic' 
make: *** [accessor.o] Error 1 

make failed, exit code 2 

Gem files will remain installed in /Users/masonscott/.rvm/gems/ruby-2.2.1/gems/therubyracer-0.12.2 for inspection. 
Results logged to /Users/masonscott/.rvm/gems/ruby-2.2.1/extensions/x86_64-darwin-14/2.2.0-static/therubyracer-0.12.2/gem_make.out 

我试着搜索无处不在,它看起来像编译器应该忽略rdynamic标志,但由于某种原因矿井没有。我尝试通过gcc更新到gcc5,但仍然没有解决问题。我能做些什么来解决这个问题?

回答

0

我在安装therubyracer时遇到问题(因为libv8存在问题)。我想你可以试试这个。

$ gem uninstall libv8 
$ gem install therubyracer -v '0.12.0' 

另一种方法是如下

gem uninstall libv8 
brew install v8 
gem install therubyracer 
gem install libv8 -v '3.16.14.3' -- --with-system-v8 

和不包安装。我认为它可以解决你的问题。

+0

谢谢,我想我明白了。我不得不将gcc编译器更改为4.2版。出于某种原因,较新的gcc版本不会忽略-rdynamic标志,该标志仅用于在Linux上进行编译,并不实际与Windows和osx兼容[根据此问题](http://stackoverflow.com/questions)/29534519 /为什么-GCC-犯规 - 认识 - rdynamic选项) –

相关问题