使用xquic 1.6.2时,编译tengine时报错,(用xquic 1.6.0时是正常的) tengine 为3.1.0: 编译参数如下: ./configure --prefix=/usr/local/nginx \ --with-xquic-inc="../xquic-1.6.2/include" \ --with-xquic-lib="../xquic-1.6.2/build" \ --with-http_v2_module \ --add-module=./modules/ngx_http_xquic_module \ --with-openssl="../Tongsuo-8.3.2" \ --with-http_realip_module \ --with-http_stub_status_module \ --with-http_ssl_module \ --with-http_gzip_static_module \ --with-stream \ --with-stream_realip_module \ --with-stream_ssl_module \ --with-stream_sni \ --add-module=../ngx_cache_purge-2.5.3 \ --add-module=../ngx_devel_kit-0.3.2 \ --add-module=../headers-more-nginx-module-0.34 \ --add-module=../nginx-module-vts-0.2.2 \ --add-module=./modules/ngx_http_upstream_dynamic_module \ --add-module=./modules/ngx_http_upstream_check_module \ --add-module=./modules/ngx_http_upstream_vnswrr_module \ --with-http_lua_module \ --with-luajit-lib=/usr/local/luajit/lib/ \ --with-luajit-inc=/usr/local/luajit/include/luajit-2.1/ \ --with-ld-opt=-Wl,-lpcre,-rpath,/usr/local/lib \ --with-cc-opt="-I modules/ngx_http_lua_module/src" && make -j2
报错如下: ./modules/ngx_http_xquic_module/ngx_http_xquic.c cc -c -I/usr/local/luajit/include/luajit-2.1/ -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I modules/ngx_http_lua_module/src -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I src/proc -I ./modules/ngx_http_xquic_module -I ../xquic-1.6.2/include -I ../ngx_devel_kit-0.3.2/objs -I objs/addon/ndk -I ./modules/ngx_http_upstream_check_module -I modules/ngx_http_lua_module/src/api -I ../Tongsuo-8.3.2/.openssl/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I ../ngx_devel_kit-0.3.2/src -I ../ngx_devel_kit-0.3.2/src -I ../ngx_devel_kit-0.3.2/objs -I objs/addon/ndk -I /usr/local/luajit/include/luajit-2.1/ -I src/stream \ -o objs/addon/ngx_http_xquic_module/ngx_xquic_intercom.o \ ./modules/ngx_http_xquic_module/ngx_xquic_intercom.c ./modules/ngx_http_xquic_module/ngx_http_xquic.c: In function ‘ngx_http_xquic_session_process_packet’: ./modules/ngx_http_xquic_module/ngx_http_xquic.c:970:59: error: passing argument 9 of ‘xqc_engine_packet_process’ makes integer from pointer without a cast [-Werror=int-conversion] 970 | (xqc_msec_t) recv_time, NULL) != 0) | ^~~~ |
---|---|---|
void * |
In file included from ./modules/ngx_http_xquic_module/ngx_http_v3_stream.h:14,
from ./modules/ngx_http_xquic_module/ngx_xquic.h:12,
from ./modules/ngx_http_xquic_module/ngx_http_xquic.h:13,
from ./modules/ngx_http_xquic_module/ngx_http_xquic.c:9:
../xquic-1.6.2/include/xquic/xquic.h:1416:34: note: expected ‘xqc_usec_t’ {aka ‘long unsigned int’} but argument is of type ‘void ’
1416 | uint64_t path_id, xqc_usec_t recv_time, void user_data);
| ~~~^~~~~
./modules/ngx_http_xquic_module/ngx_http_xquic.c:967:9: error: too few arguments to function ‘xqc_engine_packet_process’
967 | if (xqc_engine_packet_process(qc->engine, (u_char )packet->buf, recv_size,
| ^~~~~~~~~
In file included from ./modules/ngx_http_xquic_module/ngx_http_v3_stream.h:14,
from ./modules/ngx_http_xquic_module/ngx_xquic.h:12,
from ./modules/ngx_http_xquic_module/ngx_http_xquic.h:13,
from ./modules/ngx_http_xquic_module/ngx_http_xquic.c:9:
../xquic-1.6.2/include/xquic/xquic.h:1412:11: note: declared here
1412 | xqc_int_t xqc_engine_packet_process(xqc_engine_t engine,
| ^~~~~~~~~
cc1: all warnings being treated as errors
make[1]: [objs/Makefile:1849: objs/addon/ngx_http_xquic_module/ngx_http_xquic.o] Error 1
make[1]: Waiting for unfinished jobs....
make[1]: Leaving directory '/root/source/tengine'
make: *** [Makefile:10: build] Error 2