本地编译
0)执行scl enable devtoolset-7 bash,sudo yum install libasan4
1)Makefile LINK 添加-lasan
2)在CFLAGS添加
-fsanitize=address -fno-omit-frame-pointer,去掉-O -O2编译优化;
3) sed 's/-O2//g' /root/nginx-rtsp/openresty-1.19.3.2/build/nginx-1.19.3/objs/Makefile | sed 's/-O//g' >xxx; mv -f xxx /root/nginx-rtsp/openresty-1.19.3.2/build/nginx-1.19.3/objs/Makefile
Dockerfile版本
RUN cd /root/nginx-rtsp/openresty-1.19.3.2 && ASAN_OPTIONS=detect_leaks=0 ./configure --prefix=/opt/nginx \
--with-pcre-jit \
--with-http_ssl_module \
--with-http_v2_module \
--add-module=xxx \
--with-cc-opt="-Werror -W -g -O0 -fno-omit-frame-pointer -fsanitize=address -fsanitize-recover=address" \
--with-ld-opt="-fsanitize=address -fsanitize-recover=address -lpthread"
ENV ASAN_OPTIONS=halt_on_error=0:detect_container_overflow=0