Zabbix Documentation 5.0

3.04.04.4 (current)| In development:5.0 (devel)| Unsupported:1.82.02.22.43.23.44.2Guidelines

User Tools

Site Tools


manual:installation:install:win_agent

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
manual:installation:install:win_agent [2019/01/15 09:00]
martins-v shorter title
manual:installation:install:win_agent [2019/10/07 06:35] (current)
Line 3: Line 3:
 === Overview === === Overview ===
  
-This section demonstrates how to build Windows agent binaries from sources with or without TLS.+This section demonstrates how to build Zabbix ​Windows agent binaries from sources with or without TLS.
  
 === Compiling OpenSSL === === Compiling OpenSSL ===
Line 68: Line 68:
  
   - On a Linux machine check out the source from SVN:<​code>​   - On a Linux machine check out the source from SVN:<​code>​
-$ svn co svn://​svn.zabbix.com/​tags/​4.2.0 +$ svn co svn://​svn.zabbix.com/​tags/​4.4.0 
-$ cd 4.2.0/+$ cd 4.4.0/
 $ ./​bootstrap.sh $ ./​bootstrap.sh
 $ ./configure --enable-agent --enable-ipv6 --prefix=`pwd` $ ./configure --enable-agent --enable-ipv6 --prefix=`pwd`
Line 75: Line 75:
 $ make dist $ make dist
 </​code>​ </​code>​
-  - Copy and unpack the archive, e.g. zabbix-4.2.0.tar.gz, on a Windows machine. +  - Copy and unpack the archive, e.g. zabbix-4.4.0.tar.gz, on a Windows machine. 
-  - Let's assume that sources are in e:​\zabbix-4.2.0. Open a commandline window e.g. the x64 Native Tools Command Prompt for VS 2017 RC. Go to E:​\zabbix-4.2.0\build\win32\project.+  - Let's assume that sources are in e:​\zabbix-4.4.0. Open a commandline window e.g. the x64 Native Tools Command Prompt for VS 2017 RC. Go to E:​\zabbix-4.4.0\build\win32\project.
   - Compile zabbix_get, zabbix_sender and zabbix_agent.   - Compile zabbix_get, zabbix_sender and zabbix_agent.
     * without TLS: <​code>​     * without TLS: <​code>​
-E:​\zabbix-4.2.0\build\win32\project>​ nmake /K PCREINCDIR=E:​\pcre-8.41-install\include PCRELIBDIR=E:​\pcre-8.41-install\lib+E:​\zabbix-4.4.0\build\win32\project>​ nmake /K PCREINCDIR=E:​\pcre-8.41-install\include PCRELIBDIR=E:​\pcre-8.41-install\lib
 </​code>​ </​code>​
     * with TLS: <​code>​     * with TLS: <​code>​
-E:​\zabbix-4.2.0\build\win32\project>​ nmake /K -f Makefile_get TLS=openssl TLSINCDIR=C:​\OpenSSL-Win64-111-static\include TLSLIBDIR=C:​\OpenSSL-Win64-111-static\lib PCREINCDIR=E:​\pcre-8.41-install\include PCRELIBDIR=E:​\pcre-8.41-install\lib +E:​\zabbix-4.4.0\build\win32\project>​ nmake /K -f Makefile_get TLS=openssl TLSINCDIR=C:​\OpenSSL-Win64-111-static\include TLSLIBDIR=C:​\OpenSSL-Win64-111-static\lib PCREINCDIR=E:​\pcre-8.41-install\include PCRELIBDIR=E:​\pcre-8.41-install\lib 
-E:​\zabbix-4.2.0\build\win32\project>​ nmake /K -f Makefile_sender TLS=openssl TLSINCDIR="​C:​\OpenSSL-Win64-111-static\include TLSLIBDIR="​C:​\OpenSSL-Win64-111-static\lib"​ PCREINCDIR=E:​\pcre-8.41-install\include PCRELIBDIR=E:​\pcre-8.41-install\lib +E:​\zabbix-4.4.0\build\win32\project>​ nmake /K -f Makefile_sender TLS=openssl TLSINCDIR="​C:​\OpenSSL-Win64-111-static\include TLSLIBDIR="​C:​\OpenSSL-Win64-111-static\lib"​ PCREINCDIR=E:​\pcre-8.41-install\include PCRELIBDIR=E:​\pcre-8.41-install\lib 
-E:​\zabbix-4.2.0\build\win32\project>​ nmake /K -f Makefile_agent TLS=openssl TLSINCDIR=C:​\OpenSSL-Win64-111-static\include TLSLIBDIR=C:​\OpenSSL-Win64-111-static\lib PCREINCDIR=E:​\pcre-8.41-install\include PCRELIBDIR=E:​\pcre-8.41-install\lib+E:​\zabbix-4.4.0\build\win32\project>​ nmake /K -f Makefile_agent TLS=openssl TLSINCDIR=C:​\OpenSSL-Win64-111-static\include TLSLIBDIR=C:​\OpenSSL-Win64-111-static\lib PCREINCDIR=E:​\pcre-8.41-install\include PCRELIBDIR=E:​\pcre-8.41-install\lib
 </​code>​ </​code>​
-  - New binaries are located in e:​\zabbix-4.2.0\bin\win64. Since OpenSSL was compiled with '​no-shared'​ option, Zabbix binaries contain OpenSSL within themselves and can be copied to other machines that do not have OpenSSL.+  - New binaries are located in e:​\zabbix-4.4.0\bin\win64. Since OpenSSL was compiled with '​no-shared'​ option, Zabbix binaries contain OpenSSL within themselves and can be copied to other machines that do not have OpenSSL. 
 + 
 +=== Compiling Zabbix with LibreSSL === 
 + 
 +The process is similar to compiling with OpenSSL, but you need to make small changes in files located in the ''​build\win32\project''​ directory:​ 
 +    * In ''​Makefile_tls''​ delete ''/​DHAVE_OPENSSL_WITH_PSK''​. i.e. find <​code>​ 
 +CFLAGS = $(CFLAGS) /​DHAVE_OPENSSL /​DHAVE_OPENSSL_WITH_PSK</​code>​and replace it with <​code>​ 
 +CFLAGS = $(CFLAGS) /​DHAVE_OPENSSL</​code>​ 
 +    * In ''​Makefile_common.inc''​ add ''/​NODEFAULTLIB:​LIBCMT''​ i.e. find <​code>​ 
 +/​MANIFESTUAC:"​level='​asInvoker'​ uiAccess='​false'"​ /​DYNAMICBASE:​NO /​PDB:​$(TARGETDIR)\$(TARGETNAME).pdb</​code>​and replace it with <​code>​ 
 +/​MANIFESTUAC:"​level='​asInvoker'​ uiAccess='​false'"​ /​DYNAMICBASE:​NO /​PDB:​$(TARGETDIR)\$(TARGETNAME).pdb /​NODEFAULTLIB:​LIBCMT</​code>​