Nginx源码浅析-编译前准备configure简介

2016/10/05 - Nginx

configure文件的作用及其产出

  • 生成obj、src等文件夹,用于存放编译中间文件
  • 生成Makefile文件
  • 记录特性检测日志autoconf.err
  • 生成宏定义头文件ngx_auto_config.h和ngx_auto_headers.h
  • 生成ngx_modules.c文件(含各模块extern声明、名字字符串、ngx_module_t数组ngx_modules)

configure流程

  • configure入参处理(option、case、sed)
    . auto/options
    
  • 定义宏(ngx_modules.c等),生成简单Makefile
     . auto/init
    
  • 定义宏(源文件、模块)
     . auto/sources
    
  • 检查操作系统(uname)

  • 设置编译器相关参数,编译期特性检测(检测方法:生成相应的代码并执行)
     . auto/cc/conf
    
  • 设置操作系统宏、unix相关宏及特性检测、线程相关宏
     . auto/os/conf
     . auto/unix
     . auto/threads
    
  • 设置模块相关宏及文件ngx_modules.c(其中含有ngx_module_t数组)
     . auto/modules
    
  • 依赖库宏设置及特性检测(如openssl)
     . auto/lib/conf
    
  • 生成Makefile文件
     . auto/make
     . auto/lib/make
     . auto/install
    

如果文章对您有帮助,欢迎扫描下方二维码赞助(一分也是爱噢),谢谢

Search

    一分也是爱噢 一分也是爱

    目录