httpd létrehozása A mellékelt Visual Studio projektfájlokkal
követelmények
az Apache lefordításához a következő környezet megfelelő telepítése szükséges:
-
lemezterület
győződjön meg arról, hogy legalább 200 MB szabad lemezterület áll rendelkezésre. A telepítés után az Apache körülbelül 80 MB lemezterületet igényel, plusz helyet a napló-és gyorsítótár-fájlokhoz, amelyek gyorsan növekedhetnek. A tényleges lemezterület-követelmények jelentősen eltérnek a választott konfigurációtól és a harmadik féltől származó moduloktól vagy könyvtáraktól függően, különösen akkor, ha az OpenSSL is épül. Mivel sok fájl szöveges és nagyon könnyen tömöríthető, az NTFS fájlrendszer tömörítése megfelezi ezeket a követelményeket.
-
megfelelő javítások
a httpd bináris több javítás segítségével épül fel harmadik féltől származó csomagokra, amelyek biztosítják a kiadott kód felépítését és hibakeresését. Ezek a javítások http://www.apache.org/dist/httpd/binaries/win32/patches_applied/ – től kaphatók és terjeszthetők, és ajánlott alkalmazni, hogy azonos eredményeket érjenek el, mint a “hivatalos” asf elosztott bináris fájlok.
-
Microsoft Visual C++ 6.0 (Visual Studio 97) vagy újabb.
az Apache felépíthető a parancssori eszközökkel, vagy a Visual Studio IDE Workbench-en belül. A parancssor felépítése megköveteli, hogy a környezet tükrözze a
PATH
,INCLUDE
,LIB
és egyéb változók, amelyek avcvars32.bat
parancsfájllal konfigurálhatók.érdemes lehet A Visual Studio Processzorcsomagot a Visual Studio régebbi verziójához, vagy az újabb Visual Studio kiadások teljes (Nem expressz) verzióját az ml-hez.exe összeszerelő. Ez lehetővé teszi az OpenSSL felépítését, ha szükséges, a hatékonyabb összeszerelési kód megvalósításával.az aktív httpd-közreműködők csak a Microsoft fordítói eszközláncát támogatják aktívan. Bár a projekt rendszeresen elfogadja a javításokat, hogy biztosítsa a MinGW és más alternatív építmények munkáját és javuljon rajtuk, ezeket nem tartják aktívan karban, és gyakran megszakadnak a normális fejlődés során. -
frissített Microsoft Windows Platform SDK, 2003.február vagy újabb.
a megfelelő Windows Platform SDK alapértelmezés szerint szerepel a Visual C++ 7.1 (Visual Studio 2002) teljes (nem express/lite) verzióiban, és ezek a felhasználók figyelmen kívül hagyhatják ezeket a lépéseket, kivéve, ha kifejezetten a Platform SDK újabb vagy más verzióját választják.
a Visual C++ 6.0 vagy 7.0 (Studio 2000.Net) használatához A Platform SDK környezetet a
setenv.bat
szkript használatával kell elkészíteni (a Platform SDK telepítette) a parancssor felépítése vagy az msdev/devenv GUI környezet elindítása előtt. A Platform SDK telepítése a Visual Studio Express (2003-as és újabb) verziókhoz megfelelően módosítja az alapértelmezett környezetet."c:\Program Files\Microsoft Visual Studio\VC98\Bin\VCVARS32"
"c:\Program Files\Platform SDK\setenv.bat" -
Perl és awk
az itt javasolt több lépéshez perl tolmács szükséges a build előkészítési folyamat során, de egyébként nem szükséges.
az Apache build rendszeren belüli telepítéséhez több fájlt módosítunk a
awk.exe
segédprogrammal. az awk-t azért választották, mert ez egy nagyon kicsi letöltés (a Perl-hez vagy a WSH/VB-hez képest), és elvégzi a konfigurációs fájlok módosítását a telepítéskor. Brian Kernighan http://www.cs.princeton.edu/~bwk/btl.mirror/ webhelyén van egy lefordított natív Win32 bináris, http://www.cs.princeton.edu/~bwk/btl.mirror/awk95.exe, amelyetawk.exe
névvel kell menteni (awk95.exe
helyett).ha awk.exe nem található, Makefile.a win telepítési célja nem hajt végre helyettesítéseket a telepítettben .conf fájlok. Manuálisan kell módosítania a telepített .conf fájlok, amelyek lehetővé teszik a szerver indítását. Keresse meg és cserélje ki az összes “@token@” címkét.a Visual Studio IDE csak az eszközök- > opciók- > (projektek- >) menüpontban megadott elérési útról vagy futtatható útvonalról találja meg aawk.exe
könyvtárakat. Biztosítsa az awk-t.az exe a rendszer útvonalán van.vegye figyelembe azt is, hogy ha Cygwin eszközöket használ (http://www.cygwin.com/), akkor az awk segédprogram nevegawk.exe
, és hogy aawk.exe
fájl valójában agawk.exe
fájlra mutató hivatkozás. A Windows parancshéj nem ismeri fel a szimbolikus linkeket, ezért az InstallBin nem fog működni. A megoldás aawk.exe
törlése a cygwin telepítésből, majd agawk.exe
áthelyezése aawk.exe
fájlba. Vegye figyelembe a gawk 3.0 cygwin / mingw portjait is.x hibás volt, kérjük, frissítsen 3.1-re.x mielőtt megpróbálna használni bármilyen gawk portot. -
zlib könyvtár (for
mod_deflate
)a Zlib-et egy
srclib
alkönyvtárba kell telepíteni, amelynek nevezlib
. Ezt be kell építeni a helyére. Zlib lehet beszerezni http://www.zlib.net/ – amod_deflate
megerősítette, hogy megfelelően működik verzió 1.2.3.nmake -f win32\Makefile.msc
nmake -f win32\Makefile.msc test -
OpenSSL könyvtárak (
mod_ssl
ésab.exe
ssl támogatással)az OpenSSL könyvtár kriptográfiai szoftver. Abban az országban, ahol Ön jelenleg tartózkodik, korlátozások vonatkozhatnak a titkosító szoftverek importjára, birtoklására, használatára és/vagy egy másik országba történő újrakivitelére. Mielőtt bármilyen titkosító szoftvert használna, kérjük, ellenőrizze országa törvényeit, rendeleteit és irányelveit a titkosító szoftverek importálásával, birtoklásával, használatával és újrakivitelével kapcsolatban, hogy ez megengedett-e. Lásd http://www.wassenaar.org/ további információkért.az OpenSSL konfigurálásához és felépítéséhez a perl telepítése szükséges.
az OpenSSL-t egy
srclib
nevű alkönyvtárba kell telepíteniopenssl
, a http://www.openssl.org/source/ – ből származik, amod_ssl
vagy aabs.exe
projekt fordításához, amely ab.C engedélyezett SSL támogatással. Ahhoz, hogy előkészítse OpenSSL kell kapcsolni Apache mod_ssl vagy abs.exe, és tiltsa le a szabadalmi terhelt funkciókat az OpenSSL-ben, a következő build parancsokat használhatja:perl Configure no-rc5 no-idea enable-mdc2 enable-zlib VC-WIN32 -Ipath/to/srclib/zlib -Lpath/to/srclib/zlib
ms\do_masm.bat
nmake -f ms\ntdll.maknem ajánlott a zlib-dynamic használata, mivel ez az SSL-adatfolyamok leeresztésének költségeit az első kérésre továbbítja, amelynek be kell töltenie a zlib dll-t. Megjegyzés: a javasolt javítás lehetővé teszi, hogy a-L jelző működjön a windows buildekkel, javítja a zdll nevét.lib és biztosítja .pdb fájlok jönnek létre a hibaelhárításhoz. Ha az assembler nincs telepítve, akkor a fenti no-asm-et adja hozzá, és az ms\do_ms.bat-ot használja az ms\do_masm helyett.denevér forgatókönyv. -
Adatbázis-könyvtárak (
mod_dbd
ésmod_authn_dbm
)az apr-util könyvtár a DBM (keyed database) és a DBD (query oriented database) kliens funkciókat teszi elérhetővé a httpd szerver és moduljai számára, mint például a hitelesítés és az engedélyezés. Az sdbm dbm és odbc DBD szolgáltatókat feltétel nélkül állítják össze.
a dbd támogatás tartalmazza az Oracle instantclient csomagot, a MySQL-t, a PostgreSQL-t és az sqlite-t. Ezek felépítéséhez például állítsa be a LIB-t a könyvtár elérési útjának, az INCLUDE-t a fejléc elérési útjának, az elérési utat pedig mind a négy SDK dll bin elérési útjának beillesztésére, és állítsa be a dbd_list környezeti változót, hogy tájékoztassa a buildet arról, hogy melyik kliens illesztőprogram SDK-k helyesen vannak telepítve, pl.;
set DBD_LIST=sqlite3 pgsql oracle mysql
Hasonlóképpen, a dbm támogatás kiterjeszthető a Dbm_list segítségével egy Berkeley DB szolgáltató (db) és/vagy gdbm szolgáltató felépítéséhez, hasonlóan a LIB, INCLUDE és PATH konfigurálásával, hogy biztosítsa az ügyfélkönyvtár libs és fejlécek rendelkezésre állását.
set DBM_LIST=db gdbm
az adatbázis-disztribúciók megválasztásától függően szükség lehet a tényleges linkcél nevének megváltoztatására (pl.lib vs. libgdb.lib), amelyek szerepelnek a megfelelő .dsp/.mak fájlokat a könyvtárakban srclib \ apr-util \ dbd vagy …\dbm.lásd a README-win32.txt fájl további tippeket megszerzése a különböző adatbázis-illesztőprogram SDK.
Building from Unix sources
az Apache HTTP Server projekt politikája az, hogy csak Unix forrásokat szabadít fel. A letölthető Windows forráscsomagokat önkéntesek biztosították, és előfordulhat, hogy nem állnak rendelkezésre minden kiadáshoz. A kiszolgálót továbbra is felépítheti a Windows rendszeren a Unix forrás tarballból, csak néhány további lépéssel.
- töltse le és csomagolja ki a UNIX source tarballt a legújabb verzióhoz.
- töltse le és csomagolja ki az APR, AR-Util és APR-Iconv legújabb verziójának Unix source tarballját, helyezze ezeket a forrásokat a httpd-2 könyvtárakba.x.x \ srclib \ április, httpd-2.x.x \ srclib \ apr-util és httpd-2.x.X\srclib \ apr-iconv
- nyisson meg egy parancssort és CD-t a httpd-2-hez.x. x mappa
- futtassa a sorvégződések konverziós segédprogramot a parancssoron;
perl srclib\apr\build\lineends.pl
most már építeni a szerver a Visual Studio fejlesztői környezet segítségével az IDE. A kiszolgáló parancssori felépítése Unix forrásokból nem lehetséges, hacsak nem exportál .Mak fájlok az alábbiak szerint.
parancssori Build
Makefile.win
a legfelső szintű Apache makefile. Az Apache Windows rendszeren történő fordításához egyszerűen használja az alábbi parancsok egyikét a release
vagy debug
íz létrehozásához:
nmake /f Makefile.win _apacher
nmake /f Makefile.win _apached
bármelyik parancs lefordítja az Apache-t. Ez utóbbi letiltja a kapott fájlok optimalizálását, megkönnyítve ezzel a kód egyetlen lépését a hibák megtalálásához és a problémák felkutatásához.
hozzáadhatja az apr-util dbd és dbm szolgáltató választásait a dbd_list és dbm_list kiegészítő make (környezeti) változókkal, lásd az Adatbáziskönyvtárakkal kapcsolatos megjegyzéseket, fent. Tekintse át a Makefile kezdeti megjegyzéseit.nyerjen további opciókért, amelyeket a build meghívásakor lehet biztosítani.
Developer Studio Workspace IDE Build
az Apache a VC++Visual Studio fejlesztői környezetével is lefordítható. A folyamat egyszerűsítése érdekében a Visual Studio munkaterület, Apache.dsw
biztosított. Ez a munkaterület a teljes Apache bináris kiadáshoz szükséges .dsp
projektek teljes listáját tartalmazza. Ez magában foglalja a projektek közötti függőségeket annak biztosítása érdekében, hogy a megfelelő sorrendben épüljenek.
nyissa meg a Apache.dsw
munkaterületet, és válassza a InstallBin
(Release
vagy Debug
build, ha szükséges) lehetőséget aktív projektként. InstallBin
az összes kapcsolódó projekt felépítését okozza, majd meghívja az Makefile.win
parancsot a lefordított futtatható fájlok és DLL-ek áthelyezésére. Lehet személyre a INSTDIR=
választás megváltoztatásával InstallBin
‘ s Settings, General tab, build parancssori bejegyzést. INSTDIR
alapértelmezés szerint a /Apache2
könyvtár. Ha csak tesztfordítást szeretne (telepítés nélkül), akkor a BuildBin
projektet építheti helyette.
a .dsp
projektfájlok Visual Studio 6.0 (98) formátumban kerülnek terjesztésre. Visual C++ 5.0 (97) felismeri őket. A Visual Studio 2002 (. net) és újabb felhasználóknak Apache.dsw
plusz a .dsp
fájlokat Apache.sln
plusz .msproj
fájlokká kell konvertálniuk. Győződjön meg róla, hogy újra konvertálja a .msproj
fájlt, ha a forrás .dsp
fájl megváltozik! Ez nagyon triviális, csak nyissa meg újra a Apache.dsw
– t a VC++ 7.0 IDE-ben, és konvertálja újra.
perl srclib\apr\build\cvtdsp.pl -2005
átalakítja a / D zászlók RC zászlók használni egy alternatív, értelmezhető szintaxis; sajnos ez a szintaxis nem támogatja a Visual Studio 97 vagy exportált .Mak akták. Ezek / D zászlók használják, hogy adja át a hosszú leírása a mod_apachemodule.so fájlokat a megosztott .rc erőforrás verzió-azonosító build.
perl srclib\apr\build\cvtdsp.pl -ossl11
a Visual Studio 2002 (. net) és a későbbi felhasználóknak a Build menü, a Configuration Manager párbeszédpanelen is törölniük kell a Debug
és Release
Megoldásmodulok abs
, mod_deflate
és mod_ssl
összetevők jelölését, valamint minden apr_db*
– val kezdődő összetevőt. Ezeket a modulokat a nmake
vagy az IDE közvetlen meghívásával építjük fel a BinBuild
target segítségével, amely feltételesen építi ezeket a modulokat, ha a srclib
openssl
és/vagy zlib
könyvtárak léteznek, és a DBD_LIST
és DBM_LIST
környezeti változók beállításán alapul.
Parancssor exportálása .a
exportált .mak
Mak fájlok nagyobb gondot okoznak, de a Visual C++ 5.0 felhasználóknak szükségük van a mod_ssl
, az abs (ab
SSL támogatással) és/vagy a mod_deflate
felépítésére. A .a mak fájlok a C++ eszközlánc-disztribúciók szélesebb körét is támogatják, mint például a Visual Studio Express.
először meg kell építeni az összes projektet annak érdekében, hogy hozzon létre minden dinamikus automatikusan generált célokat, hogy a függőségek lehet értelmezni helyesen. Készítse el a teljes projektet a Visual Studio 6-ból.0 (98) IDE, a BuildAll
cél, majd használja a projekt menü Export minden Makefile (ellenőrzése “a függőségek”.) Futtassa a következő parancsot az abszolút útvonalak relatív útvonalakká történő kijavításához, hogy azok bárhol felépüljenek:
perl srclib\apr\build\fixwin32mak.pl
ezt a parancsot a httpd forrásfa legfelső szintű könyvtárából kell beírnia. Minden .mak
és .dep
Projektfájl az aktuális könyvtárban és az alatt javításra kerül, és az időbélyegeket úgy módosítják, hogy tükrözzék a .dsp
értéket.
mindig tekintse át a létrehozott .mak
és .dep
fájlokat Platform SDK vagy más helyi, gépspecifikus fájl elérési utak esetén. A DevStudio\Common\MSDev98\bin\
(VC6) könyvtár tartalmaz egy sysincl.dat
fájlt, amely felsorolja az összes kivételt. Frissítse ezt a fájlt (beleértve mind az előre -, mind a fordított útvonalakat, például a sys/time.h
és a sys\time.h
) az ilyen újabb függőségek figyelmen kívül hagyásához. Ha a helyi telepítési útvonalakat egy elosztott .mak
fájlba helyezi, akkor a build teljesen meghiúsul.
ha olyan javítással járul hozzá, amely felülvizsgálja a projektfájlokat, a projektfájlokat Visual Studio 6.0 formátumban kell lekötni. A változtatásoknak egyszerűnek kell lenniük, minimális fordítási és összekapcsolási jelzőkkel, amelyeket minden Visual Studio környezet felismer.
telepítés
az Apache lefordítása után telepíteni kell a szerver gyökérkönyvtárába. Az alapértelmezett érték ugyanannak a meghajtónak a \Apache2
Könyvtára.
az összes fájl automatikus létrehozásához és telepítéséhez használja az alábbi nmake
parancsok egyikét:
nmake /f Makefile.win installr INSTDIR=dir
nmake /f Makefile.win installd INSTDIR=dir
a INSTDIR
dir argumentum a telepítési könyvtárat tartalmazza; ez elhagyható, ha az Apache kell telepíteni \Apache22
(az aktuális meghajtó).
figyelmeztetés Az Apache fejlesztési fáról történő felépítéséről
.dsp
fájlok maradnak fenn a release
buildek között. A .mak
fájlok nem regenerálódnak, a recenzens idejének óriási pazarlása miatt. Ezért nem támaszkodhat a fenti NMAKE
parancsokra a felülvizsgált .dsp
projektfájlok létrehozásához, hacsak nem exportálja az összes .mak
fájlt a projektből. Ez szükségtelen, ha a Microsoft Developer Studio környezetéből épít.