我正在尝试在我的VPS上安装Passenger和Nginx。
我关注these instructions并将所有来源的所有链接替换为当前版本。
但是当我为Nginx运行Phusion Passenger安装程序时,gcc编译器出错了:
Compiling and installing Nginx...
# sh ./configure --prefix='/opt/nginx' --with-http_ssl_module --with-http_gzip_static_module --with-cc-opt='-Wno-error' --add-module='/usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/ext/nginx'
checking for OS
+ Linux 2.6.32-220.el6.x86_64 x86_64
checking for C compiler ... not found
./configure: error: C compiler gcc is not found
我该怎么办?
OBS:我的VPS适用于CentOS 6.2 x64
答案 0 :(得分:9)
如果你确实安装了gcc,问题源于/ tmp作为noexec挂载。该错误并不完全有帮助,但如果您将/ tmp重新安装为exec,则可以正确安装乘客。
mount -o remount,rw,exec,nosuid /tmp
答案 1 :(得分:7)
遇到同样的问题,以下命令解决了这个问题; (在ubuntu服务器上)
sudo apt-get install linux-kernel-headers
sudo apt-get install build-essential
答案 2 :(得分:4)
得到了同样的错误。刚刚安装了gcc,它就开始工作了:
yum install gcc
答案 3 :(得分:2)
同样的问题,我发现我无法以root身份运行命令 必须使用
sudo
它像魅力一样工作
答案 4 :(得分:1)
如果适用的话,请确保你是sudo。
示例:
sudo ./configure ...
答案 5 :(得分:0)
一个快速入侵(我经常挣扎并最终安装预构建)是安装预构建的Nginx包而不是从源代码编译它。
对于RHEL / CentOS,使用以下内容创建名为/etc/yum.repos.d/nginx.repo的文件:
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/OS/OSRELEASE/$basearch/
gpgcheck=0
enabled=1
在上面baseurl
中将“OS”替换为“centos”,将“OSRELEASE”替换为“6”。
最后执行yum install nginx