Mac OS X安装native gem提示找不到 dyld_stub_binding_helper
在Mac OS X10.10下sudo gem install curses 返回如下错误:
apple@kissAir: ruby_src$sudo gem install curses
Password:
Fetching: curses-1.0.1.gem (100%)
Building native extensions. This could take a while...
ERROR: Error installing curses:
ERROR: Failed to build gem native extension.
/Users/apple/.rvm/rubies/ruby-2.1.3/bin/ruby extconf.rb
checking for tgetent() in -ltinfo... no
checking for tgetent() in -ltermcap... yes
checking for ncurses.h... yes
checking for initscr() in -lncursesw... no
checking for initscr() in -lncurses... yes
header: ncurses.h
library: ncurses
checking for beep()... yes
checking for bkgd()... yes
checking for bkgdset()... yes
checking for curs_set()... yes
checking for deleteln()... yes
checking for doupdate()... yes
checking for flash()... yes
checking for getbkgd()... yes
checking for getnstr()... yes
checking for init()... no
checking for init in ncurses.h... no
checking for isendwin()... yes
checking for keyname()... yes
checking for keypad()... yes
checking for resizeterm()... yes
checking for scrl()... yes
checking for set()... no
checking for set in ncurses.h... no
checking for setscrreg()... yes
checking for ungetch()... yes
checking for wattroff()... yes
checking for wattron()... yes
checking for wattrset()... yes
checking for wbkgd()... yes
checking for wbkgdset()... yes
checking for wdeleteln()... yes
checking for wgetnstr()... yes
checking for wresize()... yes
checking for wscrl()... yes
checking for wsetscrreg()... yes
checking for def_prog_mode()... yes
checking for reset_prog_mode()... yes
checking for timeout()... yes
checking for wtimeout()... yes
checking for nodelay()... yes
checking for init_color()... yes
checking for wcolor_set()... yes
checking for use_default_colors()... yes
checking for newpad()... yes
checking for ESCDELAY in ncurses.h... yes
checking for TABSIZE in ncurses.h... yes
checking for COLORS in ncurses.h... yes
checking for COLOR_PAIRS in ncurses.h... yes
checking for function curses_version in ncurses.h... yes
checking for variable curses_version in ncurses.h... no
creating Makefile
make "DESTDIR=" clean
make "DESTDIR="
compiling curses.c
linking shared-object curses.bundle
ld: warning: directory not found for option '-L/Users/mpapis/.sm/pkg/active/lib'
ld: symbol dyld_stub_binding_helper not found, normally in crt1.o/dylib1.o/bundle1.o for architecture x86_64
collect2: error: ld returned 1 exit status
make: *** [curses.bundle] Error 1
make failed, exit code 2
主要错误点是找不到符号dyld_stub_binding_helper,网上搜了一下,解决方法是将Xcode中的deployment target从低版本改为高版本,但我这个没用Xcode编译啊!想了一下,看上面编译器用的应该是gcc(4.9),要不用clang试试看呐?!
apple@kissAir: ruby_src$type gcc
gcc is /opt/local/bin/gcc
apple@kissAir: ruby_src$ls -lh /opt/local/bin/gcc
lrwxr-xr-x 1 root admin 39B 10 27 06:15 /opt/local/bin/gcc -> /usr/local/Cellar/gcc/4.9.1/bin/gcc-4.9
apple@kissAir: ruby_src$sudo mv /opt/local/bin/gcc old_gcc
Password:
apple@kissAir: ruby_src$type gcc
gcc is /usr/bin/gcc
apple@kissAir: ruby_src$gcc -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.54) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin14.0.0
Thread model: posix
apple@kissAir: ruby_src$clang -v
Apple LLVM version 6.0 (clang-600.0.54) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin14.0.0
Thread model: posix
现在gcc实际连接在clang上了,遂再次安装gem:
apple@kissAir: ruby_src$sudo gem install curses
Building native extensions. This could take a while...
Successfully installed curses-1.0.1
Parsing documentation for curses-1.0.1
Installing ri documentation for curses-1.0.1
Done installing documentation for curses after 3 seconds
1 gem installed
哦鸟!看一下导出的符号:
nm /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin14/curses.bundle
U _COLORS
U _COLOR_PAIRS
U _COLS
U _ESCDELAY
0000000000000732 T _Init_curses
U _LINES
U _TABSIZE
U ___sprintf_chk
U ___stack_chk_fail
U ___stack_chk_guard
U _beep
U _can_change_color
U _cbreak
U _color_content
U _curs_set
U _curses_version
U _def_prog_mode
U _delwin
U _doupdate
U _echo
U _endwin
U _flash
U _getbegx
U _getbegy
U _getcurx
U _getcury
U _getmaxx
U _getmaxy
U _getmouse
U _has_colors
U _idlok
U _init_color
U _init_pair
U _initscr
U _isendwin
U _keyname
U _keypad
U _mouseinterval
U _mousemask
U _mvwin
U _newpad
U _newwin
U _nl
U _nocbreak
U _nodelay
U _noecho
U _nonl
U _noraw
U _pair_content
U _pnoutrefresh
U _prefresh
U _raw
U _rb_ary_new3
U _rb_block_given_p
U _rb_cData
U _rb_cFalseClass
U _rb_cFixnum
U _rb_cFloat
U _rb_cNilClass
U _rb_cObject
U _rb_cSymbol
U _rb_cTrueClass
U _rb_check_typeddata
U _rb_data_typed_object_alloc
U _rb_define_alloc_func
U _rb_define_class_under
U _rb_define_const
U _rb_define_method
U _rb_define_module
U _rb_define_module_function
U _rb_define_module_under
U _rb_eArgError
U _rb_eRuntimeError
U _rb_eSecurityError
U _rb_fix2int
U _rb_gc_register_address
U _rb_gc_unregister_address
U _rb_isprint
U _rb_locale_str_new
U _rb_locale_str_new_cstr
U _rb_num2int
U _rb_num2long
U _rb_num2uint
U _rb_obj_alloc
U _rb_obj_class
U _rb_raise
U _rb_safe_level
U _rb_scan_args
U _rb_secure
U _rb_set_end_proc
U _rb_str_export_locale
U _rb_str_new_cstr
U _rb_string_value
U _rb_string_value_cstr
U _rb_thread_call_without_gvl
U _rb_undef_method
U _rb_yield
U _reset_prog_mode
U _resizeterm
U _ruby_xfree
U _ruby_xmalloc
U _scrollok
U _start_color
U _stdscr
U _subwin
U _ungetch
U _ungetmouse
U _use_default_colors
U _waddch
U _waddnstr
U _wattr_off
U _wattr_on
U _wattrset
U _wbkgd
U _wbkgdset
U _wborder
U _wclear
U _wclrtoeol
U _wcolor_set
U _wdelch
U _wgetch
U _wgetnstr
U _winch
U _winsch
U _winsdelln
U _wmove
U _wnoutrefresh
U _wrefresh
U _wresize
U _wscrl
U _wsetscrreg
U _wtimeout
U dyld_stub_binder
最后把gcc连接给它还原本色吧:
apple@kissAir: ~$gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/Cellar/gcc/4.9.1/libexec/gcc/x86_64-apple-darwin14.0.0/4.9.1/lto-wrapper
Target: x86_64-apple-darwin14.0.0
Configured with: ../configure --build=x86_64-apple-darwin14.0.0 --prefix=/usr/local/Cellar/gcc/4.9.1 --enable-languages=c,c++,objc,obj-c++,fortran --program-suffix=-4.9 --with-gmp=/usr/local/opt/gmp --with-mpfr=/usr/local/opt/mpfr --with-mpc=/usr/local/opt/libmpc
--with-cloog=/usr/local/opt/cloog --with-isl=/usr/local/opt/isl --with-system-zlib --enable-version-specific-runtime-libs --enable-libstdcxx-time=yes --enable-stage1-checking --enable-checking=release --enable-lto --disable-werror --with-pkgversion='Homebrew
gcc 4.9.1' --with-bugurl=https://github.com/Homebrew/homebrew/issues --enable-plugin --disable-nls --enable-multilib
Thread model: posix
gcc version 4.9.1 (Homebrew gcc 4.9.1)
apple@kissAir: ~$
Mac OS X安装native gem提示找不到 dyld_stub_binding_helper的更多相关文章
- Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验
Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...
- wget Mac OS 下安装
wget是一个从网络上自动下载文件的自由工具,支持通过HTTP.HTTPS.FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理. 下面介绍如何在Mac OS 下安装Wget 下载最新版的 ...
- Mac OS X安装OpenGL
Mac OS X安装OpenGL 安装最新的cmake brew install cmake brew upgrade cmake 安装glew brew install glew 安装GLTools ...
- TensorFlow 安装官方教程:Ubuntu 安装,Mac OS X 安装,Windows 安装
从我的使用体验来看 Ubuntu 是最好的, Mac 没有显卡,后期跑大项目比较鸡肋,Windows 安装各种依赖各种坑.Ubuntu 安装 TensorFlow 方便,后面安装 TensorFl ...
- 关于在Mac OS下安装npm与cnpm的ERR! Darwin 15.0.0解决办法
mac os安装好了很久了,不过没怎么用,昨天想要体验一下大神们推荐的黑苹果系统用起来怎么样(关于安装黑苹果的可以到我的简书去看相关文章),于是乎,打开久违的vmware,看着咬一口的苹果进度图,心中 ...
- 在 Virtual Box 安装 Mac Os 并安装 Qt 开发应用
导读 由于 Beslyric-for-X 项目开发需要,开始尝试在 Mac Os 下开发 Qt 应用.尝试成功后,记录于此,希望对有类似需求的人有所帮助. 本文以开发 Beslyric-for-X 为 ...
- 以 MAMP 为 Mac OS X 安装并设置 PHP开发环境
PHP 页需要通过 Web 服务器处理.因此,要在 Dreamweaver 中使用 PHP 进行开发,您需要访问支持 PHP 的 Web 服务器和 MySQL 数据库.phpMyAdmin 也很实用, ...
- 在Mac OS上安装Vagrant和Docker的教程
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/128.html?1455808640 当听到很多人在说Docker是多么多 ...
- Mac OS X安装OpenCV 3.1.0
在我的上一篇文章“”中已经介绍了Linux下OpenCV的安装配置方法,在这里仅仅记录Mac上相对于Linux的一点点差异. 1. 安装依赖包 Mac上安装软件包使用的工具是brew,用此来替代Ubu ...
随机推荐
- gitlab的搭建及问题的解决
gitlab则是类似于github的一个工具,github无法免费建立私有仓库,并且为了代码安全,于是在内网安装了一个自己实验室的一个git服务器,gitlab有很多依赖,而bitnami制作了一键安 ...
- 【并发编程】AIDL关键字
oneway Oneway interfaces In early betas, the Android IPC was strictly synchronous. This means that s ...
- 创建银行API
DECLARE lc_output VARCHAR2(3000); lc_msg_dummy VARCHAR2(3000); lc_return_status VARCHAR2(3000); lc_m ...
- 2.QT中使用资源文件,程序打包
1 程序中使用资源文件 A 一个QT空项目 B 右击项目,添加新文件 添加后的效果是 C 右击main.prc,选择"添加现有项",找到要使用的资源文件.最终的效果是: ...
- How to Use Kdiff3 as a 3-way Merge Tool With Mercurial, Git, and Tower.app
How to Use Kdiff3 as a 3-way Merge Tool With Mercurial, Git, and Tower.app Jan 12th, 2012 ...
- python读写word、excel、csv、json文件
http://blog.csdn.net/pipisorry/article/details/50368044 python读写word文档 (include wps)将word文档转换成txt文档 ...
- android打包方法超过65k错误
近日,Android Developers在Google+上宣布了新的Multidex支持库,为方法总数超过65K的Android应用提供了官方支持. 如果你是一名幸运的Android应用开发者,正在 ...
- IOC 控制反转(Inversion of Control,英文缩写为IoC)
在采用面向对象方法设计的软件系统中,它的底层实现都是由N个对象组成的,所有的对象通过彼此的合作,最终实现系统的业务逻辑. 在这样的齿轮组中,因为是协同工作,如果有一个齿轮出了问题,就可能会影响到整个齿 ...
- 数值分析:Hermite多项式
http://blog.csdn.net/pipisorry/article/details/49366047 Hermite埃尔米特多项式 在数学中,埃尔米特多项式是一种经典的正交多项式族,得名于法 ...
- shell脚本中调用另一个脚本的三种不同方法(fork, exec, source)
fork ( /directory/script.sh) fork是最普通的, 就是直接在脚本里面用/directory/script.sh来调用script.sh这个脚本. 运行的时候开一个sub- ...