gpt4 book ai didi

ruby - 如何在 Mac OS X 上手动构建通用 ruby​​? rvm 怎么样?

转载 作者:数据小太阳 更新时间:2023-10-29 07:54:27 25 4
gpt4 key购买 nike

我从 official git mirror 获得了 ruby 资源,然后 checkout ruby_1_9_2 分支。

git clone http://github.com/ruby/ruby.gitgit checkout ruby_1_9_2

所以,现在,我想编译 1.9.2-head。但正如您稍后会看到的,我希望有一个也适用于 1.8 的解决方案。

编译这个的标准方法是:

autoconf./configuremakemake install

这行得通,但它产生了一个仅限 x86_64 的构建:

$ ruby -vruby 1.9.2dev (2010-06-14 revision 28321) [x86_64-darwin10.3.0]

显然,我不关心 PPC,因为我使用的是 10.6,但我想同时拥有 i386 和 x86_64,因为 some things需要在 32 位中完成。

那么,我想知道的是:

  1. 用 i386 和 x86_64 archs 构建胖二进制文件的魔咒。
  2. 我也有兴趣对我的 RVM 做同样的事情 ruby 版本。

可能是不必要的系统信息:

$ system_profiler -detailLevel mini SPSoftwareDataType | ack '^ {6}' | head -3      System Version: Mac OS X 10.6.4 (10F569)      Kernel Version: Darwin 10.4.0      64-bit Kernel and Extensions: No$ uname -aDarwin meaningless.local 10.4.0 Darwin Kernel Version 10.4.0: Fri Apr 23 18:28:53 PDT 2010; root:xnu-1504.7.4~1/RELEASE_I386 i386

最佳答案

使用--with-arch选项来./configure:

$ ./configure --with-arch=x86_64,i386

--with-arch 采用以逗号分隔的体系结构列表,Ruby 应为其构建。


由 kch 添加:

构建成功后的输出:

$ file rubyruby: Mach-O universal binary with 2 architecturesruby (for architecture x86_64): Mach-O 64-bit executable x86_64ruby (for architecture i386):   Mach-O executable i386$ arch -i386 ./ruby -vruby 1.9.2dev (2010-06-29 revision 28468) [universal.i386-darwin10.4.0]$ arch -x86_64 ./ruby -vruby 1.9.2dev (2010-06-29 revision 28468) [universal.x86_64-darwin10.4.0]$ ./ruby -vruby 1.9.2dev (2010-06-29 revision 28468) [universal.x86_64-darwin10.4.0]

关于ruby - 如何在 Mac OS X 上手动构建通用 ruby​​? rvm 怎么样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3137840/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com