今天我一直在努力设置额外的VPS克隆,并且使用最新的nginx开发版本(0.9.6)遇到了一个奇怪且令人沮丧的编译时错误。
我正在运行Ubuntu 10.04.2 LTS x86_64,但是,我已将GCC升级到4.6.1。 ./ configure 运行时没有错误,但在运行 make -j4 时,我遇到以下错误:
gcc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Wunused-function -Wunused-variable -Wunused-value -Werror -g -I src / core -I src / event -I src / event / modules -I src / os / unix -I objs \ -o objs / src / core / ngx_open_file_cache.o \ SRC /核心/ ngx_open_file_cache.c src / core / ngx_resolver.c:在函数中 'ngx_resolver_process_ptr': SRC /核心/ ngx_resolver.c:1425:43: 错误:变量'qclass'设置但不是 使用[-Werror = unused-but-set-variable] SRC /核心/ ngx_resolver.c:1425:36: 错误:变量'qtype'设置但不是 使用[-Werror = unused-but-set-variable] cc1:所有警告都被视为 错误
make [1]: * [objs / src / core / ngx_resolver.o]错误1 make [1]:* 等待未完成 jobs .... make [1]:离开目录 `/root/nginx-0.9.6'make:*** [build] 错误2
(更好地见于pastebin:http://pastebin.com/g0bNS2nY)
我尝试在./configure选项中添加--with - cc-opt =“ - W”但没有结果。任何人都可以对这个节目塞子有所了解吗?
很多,非常感谢提前!
答案 0 :(得分:8)
更好的方法是将以下内容传递给./configure
--with-cc-opt=-Wno-error
答案 1 :(得分:4)
修改Makefile
,删除-Werror
。这些选项意味着:如果某些事情看起来不正确,请立即退出编译器。或者手动运行出错的编译命令,再次没有-Werror
标志:
gcc -c -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Wunused-function \
-Wunused-variable -Wunused-value -g -Isrc/core -Isrc/event \
-Isrc/event/modules -Isrc/os/unix -Iobjs \
-o objs/src/core/ngx_open_file_cache.o src/core/ngx_open_file_cache.c