linux源码编译问题 --with-module 和--without-module的设计有什么意义

发布于 2022-09-04 15:54:31 字数 1060 浏览 19 评论 0

nginx源码编译安装的时候看到./configure --help有些不太明白

  --with-http_ssl_module             enable ngx_http_ssl_module
  --with-http_v2_module              enable ngx_http_v2_module
  --with-http_realip_module          enable ngx_http_realip_module
  --with-http_addition_module        enable ngx_http_addition_module
  --with-http_xslt_module            enable ngx_http_xslt_module
  --with-http_xslt_module=dynamic    enable dynamic ngx_http_xslt_module
  --with-http_image_filter_module    enable ngx_http_image_filter_module
  --with-http_image_filter_module=dynamic

  --with-select_module               enable select module
  --without-select_module            disable select module
  --with-poll_module                 enable poll module
  --without-poll_module              disable poll module

以上的 http_ssl模块,http_v2模块 都需要指定在 ./configure 后才能添加使用该功能吗?
如果所有的--with 都是需要指定在 ./configure 后面编译才能使用,那 --without还有什么意义?

比如上面的select_module,如果需要 ./configure --with-select_module指定才能编译使用,那--without-select_module 这个编译配置选项有什么意义?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

黯淡〆 2022-09-11 15:54:31

一部分模块是默认就会编译的,一部分是不会编译的,对于默认编译的,如果不想使用,可以使用without,对于默认不编译的,如果想使用,就用with.

官方文档中是这样描述select_module

--with-select_module
--without-select_module
— enables or disables building a module that allows the server to work with the select() method. This module is built automatically if the platform does not appear to support more appropriate methods such as kqueue, epoll, or /dev/poll.

对于既有with,又有without的,比如select_module模块,这个模块会根据系统的支持情况决定默认情况下该模块是否自动编译到nginx中。因此就有了两个选项,可以手动的控制这种行为。

其它模块,如果只提供了with,那不就说明默认是不编译的,而只提供了without,则说明是默认编译的的?。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文