syslog-ng之源码编译安装syslog-ng 3.16

目的

要从源代码编译syslog-ng开源版(OSE),请完成以下步骤。或者,您可以在多个平台上使用预编译的二进制包。 有关可用于各种Linux,UNIX和其他平台的第三方软件包的列表,请参阅syslog-ng OSE第三方二进制文件页面。

步骤

  1. 从GitHub下载最新版本的syslog-ng OSE。 源代码以tar.gz存档文件的形式提供。
  2. 安装编译syslog-ng所需的以下软件包。 这些软件包适用于大多数UNIX/Linux系统。 或者,您也可以下载源代码并进行编译。
  • 一个适用于线程本地存储(Thread Local Storage, TLS)的gcc C编译器的一个版本,例如,version 4.5。
  • GNU flex词法分析器生成器(lexical analyser generator),此处获得。
  • The bison parser generator, 此处获得.
  • glib库的开发文件,此处获得。
  • Autoconf Archive软件包的开发文件, 此处获得.
  • syslog-ng OSE应用程序现在默认使用PCRE类型的正则表达式。 它需要libpcre库包, 此处获得.
  • If you want to use the Java-based modules of syslog-ng OSE (for example, the Elasticsearch, HDFS, or Kafka destinations), you must compile syslog-ng OSE with Java support.
    I don't want. so...
  1. 如果要使用http()目标将日志消息作为HTTP请求发布,请安装libcurl库的开发文件。 如果使用--disable-http编译选项,则不需要此库。 或者,您可以使用基于Java的HTTP目标实现。
  2. 如果要使用syslog-ng的spoof-source功能,请安装libnet库的开发文件,此处获得.
  3. 如果要使用smtp()目标发送电子邮件,请安装libesmtp库的开发文件。 如果使用--disable-smtp编译选项,则不需要此库。
  4. 如果要使用/etc/hosts.deny/etc/hosts.allow进行TCP访问,请安装libwrap(也称为TCP-wrappers)库的开发文件,此处获得.
  5. 进入新目录并执行以下命令。 (例如,如果./configure文件不存在,如果你是从GitHub克隆了存储库而不是使用发行版tarball,将不存在./configure文件,请执行./autogen.sh命令。)
$ ./configure
$ make
$ make install
  1. 使用以下命令解压缩syslog-ng存档
tar xvfz syslog-ng-x.xx.tar.gz

或者

unzip -c syslog-ng-x.xx.tar.gz | tar xvf -

创建一个包含syslog-ng源代码的新目录。

  1. 进入新目录并执行以下命令:
$ ./configure
$ make
$ make install

这些命令将使用其默认选项构建syslog-ng。

  1. 如果需要,请使用以下选项更改syslog-ng的编译方式,使用以下命令语法:
$ ./configure --compile-time-option-name

您还可以使用--disable选项来显式禁用功能并覆盖自动检测。 例如,要禁用TCP包装器支持,请使用--disable-tcp-wrapper选项。 有关可用编译选项的列表,请参阅编译syslog-ng OSE的选项。

syslog-ng的默认链接模式是动态的。 这意味着如果/ usr目录在NFS上,syslog-ng可能无法启动。 在syslog-ng用作系统记录器的平台上,首选--enable-mixed-linking。

你可能感兴趣的:(syslog-ng之源码编译安装syslog-ng 3.16)