希望有人能为我澄清这个问题。我正在使用rvm在rhel6x86u64中构建ruby 32位。按照这个guide(忽略了与Mac相关的内容),我运行
rvm_archflags=“-arch i386”CFLAGS=“-arch i386”LDFLAGS=“-arch i386”
rvm安装1.9.2
我得到这样一个错误:
Error running './configure --disable-install-doc --prefix=/home/deploy/.rvm/rubies/ruby-1.8.7-p371 --enable-shared'
尝试原始方法:
rvm install 1.8.7 --32
并得到:'env MACOSX_DEPLOYMENT_TARGET=CFLAGS=-O3-拱门i386-g-操作系统-管道
-没有cpp precomp CCFLAGS=-arch i386-g-Os-pipe CXXFLAGS=-arch i386-g-Os-pipe LDFLAGS=-arch i386-bind_at_load LDSHARED=cc-arch i386-dynamiclib-undefined suppress-flat_命名空间/configure--disable install doc--prefix=/home/deploy/.rvm/rubies/ruby-1.8.7-p371--enable shared
查看config.log,它说C编译器无法创建可执行文件。从错误的外观来看,我猜它与目标机器(Mac而不是RHEL)不匹配。我不太明白为什么,因为gcc绝对是为x86_64Red Hat linux构建的。有人能给我一个提示吗?
多谢
最佳答案
在32位中编译需要在linux上使用-m32
选项。-arch i386
选项是Mac特有的。
当然,您需要全套32位开发库。
关于ruby-on-rails - 在RHEL 6(x86_64 arch)中使用RVM构建32位 ruby ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14615123/