【问题标题】:Install ree-1.8.7 with RVM on Mountain Lion [duplicate]在 Mountain Lion 上安装带有 RVM 的 ree-1.8.7 [重复]
【发布时间】:2012-07-24 12:44:00
【问题描述】:

我全新安装了 Mountain Lion 并安装了 Xcode 命令行工具,.我能够让 homebrew 运行并安装 RVM。不幸的是,我无法让 RVM 安装 ree-1.8.7-head。编译时失败。我以为和X11有关,所以安装了XQuartz。仍然没有喜悦。然后我继续从应用商店安装了完整的 Xcode。仍然没有喜悦。有人在新安装的 Mountain Lion 上得到了这个结果吗?

.rvm/log/ree-1.8.7-head/make.log的底部

Find Tcl/Tk libraries. Make tcltklib.so which is required by Ruby/Tk.
gcc -I. -I../.. -I../../. -I../.././ext/tk -DHAVE_RB_SAFE_LEVEL -DHAVE_RB_HASH_LOOKUP -DHAVE_RB_PROC_NEW -DHAVE_RB_OBJ_TAINT -DHAVE_ST_PTR -DHAVE_ST_LEN -DRUBY_VERSION=\"1.8.7\" -DRUBY_RELEASE_DATE=\"2012-02-08\"  -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE   -DWITH_TCL_ENABLE_THREAD=0 -fno-common -g -O2 -pipe -fno-common   -c stubs.c
In file included from stubs.c:10:
/usr/include/tk.h:78:23: error: X11/Xlib.h: No such file or directory
In file included from stubs.c:10:
/usr/include/tk.h:549: error: expected declaration specifiers or ‘...’ before ‘Window’
/usr/include/tk.h:549: error: ‘Window’ declared as function returning a function

。 .

/usr/include/tkDecls.h:1240: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute

__’ before ‘Tk_GetBitmapFromObj’
/usr/include/tkDecls.h:1245: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
/usr/include/tkDecls.h:1356: error: expected ‘)’ before ‘*’ token
/usr/include/tkDecls.h:1362: error: expected ‘)’ before ‘*’ token
/usr/include/tkDecls.h:1387: error: expected declaration specifiers or ‘...’ before ‘GC’
/usr/include/tkDecls.h:1399: error: expected declaration specifiers or ‘...’ before ‘GC’
/usr/include/tkDecls.h:1413: error: expected declaration specifiers or ‘...’ before ‘Pixmap’
/usr/include/tkDecls.h:1420: error: expected declaration specifiers or ‘...’ before ‘XColor’
/usr/include/tkDecls.h:1448: error: expected declaration specifiers or ‘...’ before ‘Pixmap’
/usr/include/tkDecls.h:1524: error: expected ‘)’ before ‘*’ token
/usr/include/tkDecls.h:1621: error: expected declaration specifiers or ‘...’ before ‘Drawable’
/usr/include/tkDecls.h:1656: error: expected ‘)’ before ‘*’ token
/usr/include/tkDecls.h:1661: error: expected ‘)’ before ‘*’ token
/usr/include/tkDecls.h:1692: error: expected specifier-qualifier-list before ‘XColor’
make[1]: *** [stubs.o] Error 1
make: *** [all] Error 1

【问题讨论】:

    标签: ruby xcode rvm osx-mountain-lion


    【解决方案1】:

    如果您不需要 tcl 或 tk 并且正在使用 rbenv,这应该可以工作:

    brew install https://raw.github.com/Homebrew/homebrew-dupes/master/apple-gcc42.rb
    
    CC=/usr/local/bin/gcc-4.2 CONFIGURE_OPTS="--without-tcl --without-tk" rbenv install 1.8.7-p358
    

    【讨论】:

      【解决方案2】:

      试试

      rvm reinstall 1.8.7 --without-tcl --without-tk
      

      但您的问题仍然可能与 gcc-4.2 有关 -> MRI ruby​​ 需要它,llvm/clang 有一些成功,但它仍然失败 Fibers

      【讨论】:

      • 有没有更好的方法来设置 Mountain Lion?我正在考虑明天重新开始。
      • --disable-tcl --disable-tk 选项仍然失败,但我从 make 日志中添加了更多内容以查看是否提供任何线索。
      • 谢谢!这对我来说也适用于 REE(我有一个遗留项目仍在使用它)。
      • 这解决了 /usr/include/tkDecls.h:1692 中的错误。我已经安装了 XCode 4.6。
      猜你喜欢
      • 2012-07-24
      • 2012-05-16
      • 2013-03-21
      • 2013-04-13
      • 2012-11-11
      • 2012-12-12
      • 2012-12-11
      • 1970-01-01
      • 2012-10-18
      相关资源
      最近更新 更多