我正在尝试运行此命令以使 ruby 1.9.1 在我的系统上运行:
rvm install 1.9.1
Run Code Online (Sandbox Code Playgroud)
它说“运行 make 时出错”,当我查看日志文件时,这是我收到的编译错误:
gcc -I. -I../../.ext/include/x86_64-linux -I../.././include -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\" -fPIC -O2 -g -Wall -Wno-parentheses -fPIC -o ossl.o -c ossl.c
ossl.c:118:1: error: unknown type name ‘STACK’
ossl.c:119:1: error: unknown type name ‘STACK’
make[1]: *** [ossl.o] Error 1
make[1]: Leaving directory `/var/cache/ruby-rvm/src/ruby-1.9.1-p431/ext/openssl'
make: *** [mkmain.sh] Error 1
Run Code Online (Sandbox Code Playgroud)
那么这是怎么回事?如何让 ruby 1.9.1 在 ubuntu 11.04 下工作?
STACK 似乎是在/usr/include/openssl/stack.h我的系统上定义的 typedef。
该文件是libssl-dev根据 dpkg 提供的 - 您安装了该软件包吗?
根据我自己系统上最新版本的 RVM,您需要以下内容才能在 Ubuntu 11.10 上编译 Ruby:
build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion
我建议您安装它们,然后运行rvm reinstall 1.9.1清理 1.9.1 代码并安装它。
| 归档时间: |
|
| 查看次数: |
2881 次 |
| 最近记录: |