栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

nginx-1.9.2 调试

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

nginx-1.9.2 调试

环境:windows+WSL+ubuntu20.04+clion

生成cmake文件调试 1、在auto的根目录下创建名称为cmake的文件
#!/usr/bin/env bash
# NGX_CMAKE_FILE=$NGX_OBJS/CMakeLists.txt
# ********此处生成到项目跟目录,修改$NGX_OBJS/CMakeLists.txt为CMakeLists.txt
NGX_CMAKE_FILE=CMakeLists.txt
NGX_CMAKE_TMP=$NGX_OBJS/tmp

#output includes
cmake_ngx_incs=`echo $CORE_INCS $NGX_OBJS $HTTP_INCS $MAIL_INCS
			 | sed -e "s/  *([^ ][^ ]*)/$ngx_regex_cont1/g" 
				   -e "s///$ngx_regex_dirsep/g"`
cat << END                                  > $NGX_CMAKE_TMP
cmake_minimum_required(VERSION 3.6)
include_directories(
	.
	$cmake_ngx_incs)
END

#output src
cmake_ngx_src="$CORE_SRCS $HTTP_SRCS $MAIL_SRCS $NGX_MISC_SRCS $NGX_ADDON_SRCS $NGX_SHARED_SRCS"

cmake_ngx_src=`echo $cmake_ngx_src | sed -e "s/  *([^ ][^ ]*)/$ngx_regex_cont1/g"
							 -e "s///$ngx_regex_dirsep/g"`

#******** 此处将ngx_modules.c修改为$NGX_OBJS/ngx_modules.c
cat << END                                    >> $NGX_CMAKE_TMP
set(SOURCE_FILES
	$NGX_OBJS/ngx_modules.c
	$cmake_ngx_src)
END

#output target
cat << END                                   >> $NGX_CMAKE_TMP
add_executable(nginx ${SOURCE_FILES})
END


#output lib
echo ${CORE_LIBS}
CMAKE_CORE_LIBS=`echo ${CORE_LIBS} | sed -e "s/-l//g"`

cat << END                                   >> $NGX_CMAKE_TMP
target_link_libraries(nginx $CMAKE_CORE_LIBS)
END

if [ -f $NGX_CMAKE_TMP ]
then
	(cat $NGX_CMAKE_TMP | sed -e "s/\//g") > $NGX_CMAKE_FILE
	rm $NGX_CMAKE_TMP
fi
2、在根目录下的configure文件中,新增加执行命令
. auto/cmake
3、cmake生成的路径

在构建完成后,可以在根目录下的obj/temp目录下看到cmake文件

configure启动命令

其中–prefix指定生成路径为configure同级目录下的server目录
–add-modul 指定编译目录

sudo ./configure -module=./src/ngx_http_myfilter_module --with-debug --with-file-aio --add-module=./src/sendfile_test --with-threads --add-module=./src/nginx-requestkey-module-master/ --with-http_secure_link_module --add-module=./src/redis2-nginx-module-master/ --prefix=./server
执行make命令 编译
make -j8
安装

有些目录没有权限,所以使用sudo

sudo make install
启动
cmake -S .. -G "Unix Makefiles"
nginx -p ./../server
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/827792.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号