默认的nginx编译选项里居然是用debug模式(-g)的,debug模式会插入很多跟踪和ASSERT之类,造成编译以后一个nginx有好几兆。
百度之后有以下两种方法:
方法一:
去掉nginx的debug模式编译,编译以后只有375K(nginx-0.5.33, gcc4)。
在 auto/cc/gcc,最后几行有:
# debug
CFLAGS=”$CFLAGS -g”
注释掉或删掉这几行,重新编译即可。
方法二:
一般来说,默认./configure 生成的makefile文件都将带上-g选项,这对于利用gdb调试nginx是非常必要的,但会debug模式会插入很多跟踪和ASSERT之类,造成编译的nginx文件很大。
编辑去掉objs/Makefile文件中下面这一行的 -g
CFLAGS = -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g