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: ~$

时间: 2024-12-22 09:26:41

Mac OS X安装native gem提示找不到 dyld_stub_binding_helper的相关文章

《Python入门经典》——1.3 在Mac OS上安装Python

1.3 在Mac OS上安装Python 在本节,将介绍在Mac OS上安装Python的方法,并安装一个文本编辑器. 1.3.1 安装Python 如果你使用的是Mac OS计算机,那你已经安装了Python了!不需要再下载任何额外的东西.但是较早的Mac OS版本上的Python类型可能有一些细微差异,但这些差异不会影响本书中所有的操作. 1.3.2 运行Python 无论什么时候要运行Python Shell,都需要启动IDLE.有时需要你运行一个文件. 在这种情况下,启动IDLE并打开文

急求-软碟通制成centos5.11启动盘进入安装界面后 选择安装模式是提示找不到cdrom image 求解

问题描述 软碟通制成centos5.11启动盘进入安装界面后 选择安装模式是提示找不到cdrom image 求解 想装双系统 在windows8.1下装5.11 结果出现上述问题 求解!! 解决方案 你是怎么用ultraiso制作的启动盘?是释放了文件添加做的,还是直接写入镜像做的. 你是烧的dvd还是写入的U盘,如果是后者,你cmos设置中对于U盘启动是怎么设置的. 解决方案二: 我是直接将镜像写入u盘的 你知道为什么会出现那样的问题吗

如何在Mac OS上安装pytest、setuptools、wget

本文主要介绍如何在Mac OS上安装pytest,以自己实际安装为例. 同时补充介绍了Mac OS上安装setuptools和Mac OS上安装wget的方法 Mac OS上安装pytest 由于Mac OS上自带python2.7,已是目标版本,不需要更新了,在此基础上介绍安装pytest的主要步骤: 安装pip,在终端中输入: sudo easy_install pip 接着安装pytest: sudo pip install -U pytest 测试是否安装成功: py.test --ve

在Mac OS上安装Vagrant和Docker的教程_Redis

当听到很多人在说Docker是多么多么的棒,很多新潮的孩子都在使用它时,我决定在我的开发环境上也来尝试下.在下面的这篇文章中,我将讲解在Mac OS X怎样建立Postgres,Elasticsearch和Redis. 什么是Docker Docker用轻量容器把一个APP从它运行的OS中隔离开.它把APP放入到一个孤立的盒子中,对外只呈现需要使用的文件夹和端口. 这样,基于建立和使用APP的容器是可重用,共享的.目前,在Docker集中已经存在了15,000种以上的容器.Docker就像一个商

在Mac OS中安装Lua的教程_Lua

 Lua 是一个轻量级的编程语言,在游戏开发上使用非常多.在这篇文章中,我们将向你介绍在 Mac OS X 系统上安装和使用最新版本的 Lua 5.2.1. 如果你的系统已经安装了 Rudix,只需要执行 sudo rudix install lua 即可,否则 Rudix 提供一些独立的软件包用来安装,打开你的浏览器并根据系统选择相应的版本来安装. 下载之后双击安装包并执行如下的安装指令:  Lua 将默认安装到 /usr/local/ ,Lua 解释器完整的路径是 /usr/local/bi

Win2003 sp2下安装IIS会提示找不到iisadmin.mfl等文件无法继续安装

  感谢万能的baidu,同时bs可耻的ms,搞的什么屁玩意软件,这么难用 我的实践过程跟这个有一些不一样, 但主要思想是一样的,就是当发现有一个文件找不到的时候就切换到sp1的i386目录下找,应该就有. 就这样来回切换数次,终于可以成功安装iis..(真bt) 解决办法: 1.先下载SP1的安装包,执行解压. 2.再下载IIS6. 3.准备win2003光盘. 4.开始-设置-控制面板-添加或删除程序-添加或删除windows组件( A)-应用程序服务器-选Internet信息服务(IIS)

Mac OS X安装PHP扩展支持的教程

mac os x 默认已经安装了php,但是开发系统中的一些常用的PHP扩展库是没有的,需要自己手动安装,现在记录一下这个,以备查询. 安装PHP扩展要求你的Mac系统已经安装了Xcode环境和命令行开发工具,如果还没安装,请先使用Shell安装 xcode-select --install 为了扩展管理方便,首先来安装pecl扩展管理器.  cd /usr/lib/php sudo php install-pear-nozlib.phar 安装Redis.Memcache.Mongo等扩展.

在Mac OS上安装Go语言编译器的方法_Golang

我用的是mac mini然后在上边装好了sublime text2 插件依然是go sublime和go build这两个就不介绍了,因为之前已经介绍了安装了,go的mac os安装包可以直接下的,下载地址是http://code.google.com/p/go/downloads/list?q=OpSys-OSX+Type-Installer,根据你自己的电脑来说话,下载对应的就可以了.然后直接安装,安装好之后还是配置环境变量,一般的linux上边都是这样的 cd ls -a #显示的用户环境

在Mac OS上安装使用MongoDB的教程_MongoDB

概念MongoDB 是一个跨平台的,面向文档的数据库,提供高性能,高可用性和可扩展性方便. MongoDB 工作在收集和文件的概念. 什么是NoSql?NoSql,全称是 Not Only Sql,指的是非关系型的数据库.下一代数据库主要解决几个要点:非关系型的.分布式的.开源的.水平可扩展的.原始的目的是为了大规模web应用,这场运动开始于2009年初,通常特性应用如:模式自由.支持简易复制.简单的API.最终的一致性(非ACID).大容量数据等.NoSQL被我们用得最多的当数key-valu