在Linux上安装带有rvm的Nginx乘客的问题

时间:2011-04-12 17:07:43

标签: ruby-on-rails nginx passenger rvm

尝试使用Nginx安装Passenger(在EC2 Linux上)。我正在使用ec2-user(而不是Root)。带有RVM的Ruby 1.9.2。

Passenger gem正确安装。

但是当我尝试时:

passenger-install-nginx-module

我明白了:

检查所需的软件......

 * GNU C++ compiler... not found
 * The 'make' tool... found at /usr/bin/make
 * A download tool like 'wget' or 'curl'... found at /usr/bin/wget
 * Ruby development headers... found
 * OpenSSL support for Ruby... not found
 * RubyGems... found
 * Rake... found at /home/ec2-user/.rvm/wrappers/ruby-1.9.2-p180/rake
 * rack... found
 * Curl development headers with SSL support... not found
 * OpenSSL development headers... not found
 * Zlib development headers... not found

虽然以上存在。例如,如果我输入:

$> gcc
$> gcc: no input files

在网上看到我可以尝试使用的地方:

rvmsudo passenger-install-nginx-module

但我遇到了问题:

--------------------------------------------

Checking for required software...

 * GNU C++ compiler... not found
 * The 'make' tool... found at /usr/bin/make
 * A download tool like 'wget' or 'curl'... found at /usr/bin/wget
 * Ruby development headers... found
 * OpenSSL support for Ruby... not found
 * RubyGems... found
Unable to locate the RVM path. Your RVM installation is probably too old. Please update it with 'rvm update --head && rvm reload && rvm repair all'.

有什么想法吗?

5 个答案:

答案 0 :(得分:4)

你必须这样做:

rvm remove 1.9.2 
rvm pkg install openssl
rvm install 1.9.2 --with-openssl-dir=$HOME/.rvm/usr

答案 1 :(得分:1)

在尝试安装Rubies和/或Passenger之前,请确保系统上存在编译器和所有依赖库。您可以通过运行以下命令获取基于Ruby的应用程序的建议基本依赖项列表。

user$ rvm requirements

在尝试安装解释器之前安装为'ruby'列出的所有依赖项? 该列表因操作系统而异。

可以在RVM基础文档页面https://rvm.io/rvm/basics/

上找到更多信息

〜韦恩

答案 2 :(得分:0)

Unable to locate the RVM path.

这可能是不添加的症状:

[[ -s "/usr/local/rvm/scripts/rvm" ]] && source "/usr/local/rvm/scripts/rvm"

到您的.bashrc(或个人资料或其他)。这可能会导致各种奇怪的问题。

答案 3 :(得分:0)

使用 ruby​​-1.9.2-p180 和rvm。
cd~ / .rvm / src / ruby​​-1.9.2-p180 / ext / openssl /
ruby​​ extconf.rb
制作
make install
passenger-install-gninx-module

答案 4 :(得分:0)

gcc是错误的可执行文件,Passenger正在寻找g ++。用这个安装:

sudo yum install gcc-c++

和passenger-install-nginx-module应该停止抱怨gcc丢失