בניית Zabbix agent 2 על Windows
סקירה כללית
סעיף זה מדגים כיצד לבנות Zabbix agent 2 (Windows) מתוך מקורות.
התקנת מהדר MinGW
1. הורד את MinGW-w64 עם SJLJ (סט קפיצה/קפיצה לרוחק) טיפול חריג ושרשורי Windows (לדוגמה x86_64-8.1.0-release-win32-sjlj-rt_v6-rev0.7z)\
- חלץ והעבר אל c:\mingw\
-
הגדר משתנה סביבתי
@הד כבוי הגדר PATH=%PATH%;c:\mingw\bin cmd
בעת הידור השתמש בשורת Windows במקום במסוף MSYS המסופק על ידי MinGW
קומפילציה של ספריות פיתוח PCRE
ההוראות הבאות יקמפלו ויתקינו 64 סיביות PCRE ספריות ב-c:\dev\pcre וספריות 32 סיביות ב-c:\dev\pcre32:
1. הורד את ספריית PCRE גרסה 8.XX מ-pcre.org (http://ftp.pcre.org/pub/pcre/) וחלץ\
- פתח את cmd ונווט אל המקורות שחולצו
בנה 64bit PCRE
1. מחק תצורה/מטמון ישנים אם קיים:
del CMakeCache.txt
rmdir /q /s CMakeFiles
2. הפעל cmake (ניתן להתקין את CMake מ https://cmake.org/download/):
cmake -G "MinGW Makefiles" -DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS="-O2 -g" -DCMAKE_CXX_FLAGS="-O2 -g" -DCMAKE_INSTALL_PREFIX=c:\dev\pcre
3. לאחר מכן, הרץ:
mingw32-make clean
mingw32-make התקנה
בנה 32bit PCRE
1. לָרוּץ:
mingw32-make clean
2. מחק CMakeCache.txt:
del CMakeCache.txt
rmdir /q /s CMakeFiles
3. הפעל cmeke:
cmake -G "MinGW Makefiles" -DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS="-m32 -O2 -g" -DCMAKE_CXX_FLAGS="-m32 -O2 -g" -DCMAKE_EXE_LINKER_FLAGS="\-Wl,-mi386pe=TALL_PRKEEFIX_INS":cALL_PRKEEFIX \pcre32
4. לאחר מכן, הרץ:
mingw32-make התקנה
התקנת ספריות פיתוח OpenSSL
1. הורד בניית 32 ו-64 סיביות מ-https://curl.se/windows/\
- חלץ קבצים לתוך c:\dev\openssl32 ו-c:\dev\openssl ספריות בהתאם.\
- לאחר מכן הסר את *.dll.a שחולץ (ספריות עטיפות שיחות dll) שכן MinGW מעניק להם עדיפות לפני ספריות סטטיות.
קומפילציה של סוכן Zabbix 2
32 סיביות
יש לפתוח את סביבת MinGW (שורת הפקודה של Windows) ולנווט אל התיקייה build/mingw בעץ קוד המקור של Zabbix.
ולהריץ:
mingw32-make clean
mingw32-make ARCH=x86 PCRE=c:\dev\pcre32 OPENSSL=c:\dev\openssl32
64 סיביות
יש לפתוח את סביבת MinGW (שורת הפקודה של Windows) ולנווט אל התיקייה build/mingw בעץ קוד המקור של Zabbix..
ולהריץ:
mingw32-make clean
mingw32-make PCRE=c:\dev\pcre OPENSSL=c:\dev\openssl
אפשר לבנות את גרסאות 32 ו־64 סיביות על פלטפורמה של 64 סיביות, אבל על פלטפורמה של 32 סיביות אפשר לבנות רק 32 סיביות. כאשר עובדים על פלטפורמת 32 סיביות יש לפעול לפי ההנחיות ל־64 סיביות על פלטפורמת 64 סיביות.