Skip to content

版本兼容问题,模块编译安装报错 #325

@qinlz-1

Description

@qinlz-1

nginx 1.8.1
nginx_upstream_check_module 0.3.0
nginx-upsync-module 2.1.3

./configure
--prefix=/usr/local/nginx
--add-module=/usr/local/src/nginx_upstream_check_module-master
--add-module=/usr/local/src/nginx-upsync-module-master
make
报错:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c
In file included from /usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:11:0:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.h: In function ‘ngx_http_upsync_chash_init’:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.h:151:51: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
for (peer = peers->peer; peer; peer = peer->next) {
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.h: In function ‘ngx_http_upsync_del_chash_peer’:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.h:284:47: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
for (peer = peers->peer; peer; peer = peer->next) {
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c: In function ‘ngx_http_upsync_add_peers’:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:873:17: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘conns’
peer->conns = 0;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:875:17: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
peer->next = peers->peer;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:876:25: error: incompatible types when assigning to type ‘struct ngx_http_upstream_rr_peer_t[1]’ from type ‘struct ngx_http_upstream_rr_peer_t *’
peers->peer = peer;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:894:62: error: passing argument 2 of ‘ngx_palloc’ makes integer from pointer without a cast [-Werror]
uscf, addrs);
^
In file included from src/core/ngx_core.h:59:0,
from /usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:7:
src/core/ngx_palloc.h:82:7: note: expected ‘size_t’ but argument is of type ‘struct ngx_http_upstream_srv_conf_t *’
void *ngx_palloc(ngx_pool_t *pool, size_t size);
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:894:62: error: too many arguments to function ‘ngx_palloc’
uscf, addrs);
^
In file included from src/core/ngx_core.h:59:0,
from /usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:7:
src/core/ngx_palloc.h:82:7: note: declared here
void *ngx_palloc(ngx_pool_t *pool, size_t size);
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:893:19: error: assignment makes integer from pointer without a cast [-Werror]
index = ngx_palloc(cycle->pool,
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:879:24: error: variable ‘index’ set but not used [-Werror=unused-but-set-variable]
ngx_uint_t index;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c: In function ‘ngx_http_upsync_diff_filter’:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1026:58: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
for (peer = peers->peer, j = 0; peer; peer = peer->next, j++) {
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1026:64: error: left-hand operand of comma expression has no effect [-Werror=unused-value]
for (peer = peers->peer, j = 0; peer; peer = peer->next, j++) {
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1053:54: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
for (peer = peers->peer, j = 0; peer; peer = peer->next, j++) {
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1053:60: error: left-hand operand of comma expression has no effect [-Werror=unused-value]
for (peer = peers->peer, j = 0; peer; peer = peer->next, j++) {
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c: In function ‘ngx_http_upsync_del_peers’:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1116:47: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
for (peer = peers->peer; peer; peer = peer->next) {
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1126:21: error: called object is not a function or function pointer
NULL(
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1134:33: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
tmp_del_peer->next = peer;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1140:39: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
peers->peer = peer->next;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1141:36: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
pre_peer = peer->next;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1144:29: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
pre_peer->next = peer->next;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1144:42: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
pre_peer->next = peer->next;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1158:21: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
tmp_del_peer->next = NULL;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c: In function ‘ngx_http_upsync_replace_peers’:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1232:17: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘conns’
peer->conns = 0;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1237:17: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
peer->next = peers->peer;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1238:25: error: incompatible types when assigning to type ‘struct ngx_http_upstream_rr_peer_t[1]’ from type ‘struct ngx_http_upstream_rr_peer_t *’
peers->peer = peer;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1241:21: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
peer->next = NULL;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c: In function ‘ngx_http_upsync_dump_server’:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:3048:47: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
for (peer = peers->peer; peer; peer = peer->next) {
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c: In function ‘ngx_http_upsync_del_delay_delete’:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:3336:20: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
peer = peer->next;
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c: In function ‘ngx_http_upsync_show_upstream’:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:3909:47: error: ‘ngx_http_upstream_rr_peer_t’ has no member named ‘next’
for (peer = peers->peer; peer; peer = peer->next) {
^
cc1: all warnings being treated as errors
make[1]: *** [objs/addon/src/ngx_http_upsync_module.o] Error 1
make[1]: Leaving directory `/usr/local/nginx-1.8.1'
make: *** [build] Error 2

nginx 1.26.3
nginx_upstream_check_module 0.3.0
nginx-upsync-module 2.1.3

./configure
--prefix=/usr/local/nginx
--add-module=/usr/local/src/nginx_upstream_check_module-master
--add-module=/usr/local/src/nginx-upsync-module-master
make
报错:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c: In function ‘ngx_http_upsync_add_peers’:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:893:29: error: called object is not a function or function pointer
index = (void*)0(cycle->pool,
^
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c: In function ‘ngx_http_upsync_del_peers’:
/usr/local/src/nginx-upsync-module-master/src/ngx_http_upsync_module.c:1126:25: error: called object is not a function or function pointer
(void*)0(
^
make[1]: *** [objs/addon/src/ngx_http_upsync_module.o] Error 1
make[1]: Leaving directory `/usr/local/nginx-1.26.3'
make: *** [install] Error 2

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions