pingos
pingos copied to clipboard
您好,树莓派4B官方系统,安装报错
您好,我尝试在树莓派4B上安装服务,安装过程参照您的说明,运行release.sh脚本时,使用sudo授权
sudo ./release.sh -i
安装过程报如下错误,能帮我看看这是什么问题,如何解决吗?
In file included from ../modules/nginx-rtmp-module/ngx_live_relay.h:10,
from ../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c:6:
../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c: In function ‘ngx_live_relay_httpflv_parse’:
src/core/ngx_core.h:102:37: error: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int’ [-Werror=sign-compare]
#define ngx_min(val1, val2) ((val1 > val2) ? (val2) : (val1))
^
../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c:318:23: note: in expansion of macro ‘ngx_min’
len = ngx_min(st->len, b->last - p);
^~~~~~~
src/core/ngx_core.h:102:47: error: operand of ?: changes signedness from ‘int’ to ‘uint32_t’ {aka ‘unsigned int’} due to unsignedness of other operand [-Werror=sign-compare]
#define ngx_min(val1, val2) ((val1 > val2) ? (val2) : (val1))
^~~~~~
../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c:318:23: note: in expansion of macro ‘ngx_min’
len = ngx_min(st->len, b->last - p);
^~~~~~~
cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I ../modules/nginx-client-module -I ../modules/nginx-multiport-module -I ../modules/nginx-toolkit-module -I src/core -I src/event -I src/event/modules -I src/os/unix -I ../modules/nginx-rtmp-module -I objs -I src/http -I src/http/modules -I ../modules/nginx-rtmp-module -I ../modules/nginx-rtmp-module/http -I ../modules/nginx-rtmp-module/hls -I ../modules/nginx-rtmp-module/mpegts \
-o objs/addon/nginx-rtmp-module/ngx_live_relay_simple.o \
../modules/nginx-rtmp-module/ngx_live_relay_simple.c
cc1: all warnings being treated as errors
make[1]: *** [objs/Makefile:1565:objs/addon/nginx-rtmp-module/ngx_live_relay_httpflv.o] 错误 1
make[1]: *** 正在等待未完成的任务....
make[1]: 离开目录“/home/pi/Tools/pingos/nginx”
make: *** [Makefile:8:build] 错误 2
make -f objs/Makefile install
make[1]: 进入目录“/home/pi/Tools/pingos/nginx”
cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I ../modules/nginx-client-module -I ../modules/nginx-multiport-module -I ../modules/nginx-toolkit-module -I src/core -I src/event -I src/event/modules -I src/os/unix -I ../modules/nginx-rtmp-module -I objs -I src/http -I src/http/modules -I ../modules/nginx-rtmp-module -I ../modules/nginx-rtmp-module/http -I ../modules/nginx-rtmp-module/hls -I ../modules/nginx-rtmp-module/mpegts \
-o objs/addon/nginx-rtmp-module/ngx_live_relay_httpflv.o \
../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c
In file included from ../modules/nginx-rtmp-module/ngx_live_relay.h:10,
from ../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c:6:
../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c: In function ‘ngx_live_relay_httpflv_parse’:
src/core/ngx_core.h:102:37: error: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int’ [-Werror=sign-compare]
#define ngx_min(val1, val2) ((val1 > val2) ? (val2) : (val1))
^
../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c:318:23: note: in expansion of macro ‘ngx_min’
len = ngx_min(st->len, b->last - p);
^~~~~~~
src/core/ngx_core.h:102:47: error: operand of ?: changes signedness from ‘int’ to ‘uint32_t’ {aka ‘unsigned int’} due to unsignedness of other operand [-Werror=sign-compare]
#define ngx_min(val1, val2) ((val1 > val2) ? (val2) : (val1))
^~~~~~
../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c:318:23: note: in expansion of macro ‘ngx_min’
len = ngx_min(st->len, b->last - p);
^~~~~~~
cc1: all warnings being treated as errors
make[1]: *** [objs/Makefile:1565:objs/addon/nginx-rtmp-module/ngx_live_relay_httpflv.o] 错误 1
make[1]: 离开目录“/home/pi/Tools/pingos/nginx”
您好,我尝试在树莓派4B上安装服务,安装过程参照您的说明,运行release.sh脚本时,使用sudo授权
sudo ./release.sh -i
安装过程报如下错误,能帮我看看这是什么问题,如何解决吗?In file included from ../modules/nginx-rtmp-module/ngx_live_relay.h:10, from ../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c:6: ../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c: In function ‘ngx_live_relay_httpflv_parse’: src/core/ngx_core.h:102:37: error: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int’ [-Werror=sign-compare] #define ngx_min(val1, val2) ((val1 > val2) ? (val2) : (val1)) ^ ../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c:318:23: note: in expansion of macro ‘ngx_min’ len = ngx_min(st->len, b->last - p); ^~~~~~~ src/core/ngx_core.h:102:47: error: operand of ?: changes signedness from ‘int’ to ‘uint32_t’ {aka ‘unsigned int’} due to unsignedness of other operand [-Werror=sign-compare] #define ngx_min(val1, val2) ((val1 > val2) ? (val2) : (val1)) ^~~~~~ ../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c:318:23: note: in expansion of macro ‘ngx_min’ len = ngx_min(st->len, b->last - p); ^~~~~~~ cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I ../modules/nginx-client-module -I ../modules/nginx-multiport-module -I ../modules/nginx-toolkit-module -I src/core -I src/event -I src/event/modules -I src/os/unix -I ../modules/nginx-rtmp-module -I objs -I src/http -I src/http/modules -I ../modules/nginx-rtmp-module -I ../modules/nginx-rtmp-module/http -I ../modules/nginx-rtmp-module/hls -I ../modules/nginx-rtmp-module/mpegts \ -o objs/addon/nginx-rtmp-module/ngx_live_relay_simple.o \ ../modules/nginx-rtmp-module/ngx_live_relay_simple.c cc1: all warnings being treated as errors make[1]: *** [objs/Makefile:1565:objs/addon/nginx-rtmp-module/ngx_live_relay_httpflv.o] 错误 1 make[1]: *** 正在等待未完成的任务.... make[1]: 离开目录“/home/pi/Tools/pingos/nginx” make: *** [Makefile:8:build] 错误 2 make -f objs/Makefile install make[1]: 进入目录“/home/pi/Tools/pingos/nginx” cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I ../modules/nginx-client-module -I ../modules/nginx-multiport-module -I ../modules/nginx-toolkit-module -I src/core -I src/event -I src/event/modules -I src/os/unix -I ../modules/nginx-rtmp-module -I objs -I src/http -I src/http/modules -I ../modules/nginx-rtmp-module -I ../modules/nginx-rtmp-module/http -I ../modules/nginx-rtmp-module/hls -I ../modules/nginx-rtmp-module/mpegts \ -o objs/addon/nginx-rtmp-module/ngx_live_relay_httpflv.o \ ../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c In file included from ../modules/nginx-rtmp-module/ngx_live_relay.h:10, from ../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c:6: ../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c: In function ‘ngx_live_relay_httpflv_parse’: src/core/ngx_core.h:102:37: error: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int’ [-Werror=sign-compare] #define ngx_min(val1, val2) ((val1 > val2) ? (val2) : (val1)) ^ ../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c:318:23: note: in expansion of macro ‘ngx_min’ len = ngx_min(st->len, b->last - p); ^~~~~~~ src/core/ngx_core.h:102:47: error: operand of ?: changes signedness from ‘int’ to ‘uint32_t’ {aka ‘unsigned int’} due to unsignedness of other operand [-Werror=sign-compare] #define ngx_min(val1, val2) ((val1 > val2) ? (val2) : (val1)) ^~~~~~ ../modules/nginx-rtmp-module/ngx_live_relay_httpflv.c:318:23: note: in expansion of macro ‘ngx_min’ len = ngx_min(st->len, b->last - p); ^~~~~~~ cc1: all warnings being treated as errors make[1]: *** [objs/Makefile:1565:objs/addon/nginx-rtmp-module/ngx_live_relay_httpflv.o] 错误 1 make[1]: 离开目录“/home/pi/Tools/pingos/nginx”
ngx_min(st->len, b->last - p);强制转换一下类型,ngx_min((uint32_t)st->len, (uint32_t) (b->last - p));
打开 nginx的安装目录/objs/Makefile,去掉CFLAGS中的-Werror,再重新make -Wall 表示打开gcc的所有警告 -Werror,它要求gcc将所有的警告当成错误进行处理
上数方法不行啊,启动nginx 报告段错误
我也都试了一遍,上面两个办法都没有解决我的问题
pi@raspberrypi:/usr/local/pingos $ sudo ./sbin/nginx Segmentation fault
启动nginx报Segmentation fault随后失败。