2

所以我正在关注本教程,大约在编译 nginx 的一半时,“看起来好像出了点问题”。

所以,我已经安装了 RVM 并且可以正常工作,并且还安装了Passenger gem。我还使用 Homebrew 安装了 nginx,它也可以。

那么,我尝试:

rvmsudo `which passenger-install-nginx-module`

我在这里找到的。

当提示我是否要安装新版本的 nginx,或者重新编译支持乘客的 Homebrew 时,我选择选项 2。当它询问源代码在哪里时,输入:

/Library/Caches/Homebrew/nginx-1.2.6

(我对下载进行了 tar 处理,并检查了该目录中的所有内容是否存在且正确。)

然后,当它问我在哪里安装新的重新编译的 nginx 时,我说和旧的目录相同:

/usr/local/Cellar/nginx/1.2.6/sbin

我将多余的参数留空,然后按 Enter 两次。

它运行了几分钟,开始编译和安装 nginx,但随后失败。这是最后几行:

objs/ngx_modules.o \
    /Users/alex/.rvm/gems/ruby-1.9.3-p374/gems/passenger-3.0.19/ext/nginx/../common/libpassenger_common.a /Users/alex/.rvm/gems/ruby-1.9.3-p374/gems/passenger-3.0.19/ext/nginx/../common/libboost_oxt.a -lstdc++ -lpthread -lm -lpcre -lssl -lcrypto -lz
Undefined symbols for architecture x86_64:
  "_pcre_free_study", referenced from:
      _ngx_pcre_free_studies in ngx_regex.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
make[1]: *** [objs/nginx] Error 1
make: *** [build] Error 2
--------------------------------------------

It looks like something went wrong

Please read our Users guide for troubleshooting tips:

   /Users/alex/.rvm/gems/ruby-1.9.3-p374/gems/passenger-3.0.19/doc/Users guide Nginx.html

If that doesn't help, please use our support facilities at:

   https://www.phusionpassenger.com

We'll do our best to help you.

我检查了 nginx 没有运行,我还尝试卸载 Homebrew 版本的 nginx,使用默认值重新运行脚本,但它仍然失败。

我安装了最新版本的 XCode 和命令行实用程序的 Mountain Lion。有谁知道问题可能是什么?

4

1 回答 1

1

它最终成为一个问题pcre。我只是跑

brew update pcre

并使用与以前相同的选项再次运行安装程序,并且成功了。

于 2013-01-21T17:47:43.330 回答