Building httpd with the included Visual Studio project files
Requirements
Apachen kokoaminen edellyttää, että seuraava ympäristö asennetaan oikein:
-
levytila
varmista, että vapaata levytilaa on vähintään 200 MB. Asennuksen jälkeen Apache vaatii noin 80 MB levytilaa sekä tilaa loki-ja välimuistitiedostoille, jotka voivat kasvaa nopeasti. Varsinaiset levytilavaatimukset vaihtelevat huomattavasti valitsemasi kokoonpanon ja kolmansien osapuolten moduulien tai kirjastojen mukaan, varsinkin kun OpenSSL on myös rakennettu. Koska monet tiedostot ovat tekstiä ja erittäin helposti pakattuja, NTFS-tiedostojärjestelmän Pakkaus leikkaa nämä vaatimukset kahtia.
-
sopivat paikkaukset
httpd-binääri on rakennettu useiden paikkausten avulla kolmannen osapuolen paketeille, jotka varmistavat, että julkaistu Koodi on rakennettavissa ja debuggattavissa. Näitä laastareita on saatavilla ja jaossa http://www.apache.org/dist/httpd/binaries/win32/patches_applied/, ja niitä suositellaan käytettäväksi, jotta saadaan samat tulokset kuin” virallisilla ” ASF-hajautetuilla binääreillä.
-
Microsoft Visual C++ 6.0 (Visual Studio 97) tai uudempi.
Apache voidaan rakentaa komentorivityökaluilla tai Visual Studio IDE Workbenchin sisältä. Komentorivin rakentaminen vaatii ympäristön vastaamaan
PATH
,INCLUDE
,LIB
ja muut muuttujat, jotka voidaan määrittäävcvars32.bat
– skriptillä.saatat haluta Visual Studio Processor Packin Visual Studion vanhempaan versioon tai täyden version uudemmista Visual Studio editions-versioista ml: lle.exe assembler. Tämän avulla voit rakentaa OpenSSL, haluttaessa, käyttämällä tehokkaampaa assembly koodi toteutus.vain Microsoftin kääntäjätyökaluketjua tukevat aktiivisesti httpd: n aktiiviset avustajat. Vaikka projekti hyväksyy säännöllisesti laastareita varmistaakseen MinGW: n ja muiden vaihtoehtoisten rakennelmien työn ja parantaakseen niitä, niitä ei ylläpidetä aktiivisesti ja ne rikkoutuvat usein normaalin kehityksen aikana. -
päivitetty Microsoft Windows Platform SDK, helmikuu 2003 tai uudempi.
sopiva Windows-Alustan SDK sisältyy oletuksena Visual C++ 7.1: n (Visual Studio 2002) täysversioihin (ei express/lite), ja myöhemmin nämä käyttäjät voivat jättää nämä vaiheet huomiotta, ellei nimenomaisesti valita uudempaa tai eri versiota Alustan SDK: sta.
käyttääksesi Visual C++ 6.0: aa tai 7.0: aa (Studio 2000.Net), Alustan SDK-ympäristö on valmisteltava käyttäen
setenv.bat
– komentosarjaa (asennettuna Alustan SDK: lla) ennen komentorivin rakentamisen aloittamista tai MSDEV/devenv-KÄYTTÖLIITTYMÄYMPÄRISTÖN käynnistämistä. Asennus Alustan SDK Visual Studio Express versiot (2003 ja myöhemmin) pitäisi säätää oletusympäristön asianmukaisesti."c:\Program Files\Microsoft Visual Studio\VC98\Bin\VCVARS32"
"c:\Program Files\Platform SDK\setenv.bat" -
Perl ja awk
useat tässä Suositetut vaiheet vaativat Perl-tulkin rakentamisen valmistelun aikana, mutta sitä ei muuten tarvita.
Apachen asentamiseksi build-järjestelmään useita tiedostoja muokataan käyttäen
awk.exe
– apuohjelmaa. awk valittiin, koska se on hyvin pieni lataus (verrattuna Perl tai WSH/VB) ja suorittaa tehtävän muuttaa asetustiedostoja asennuksen yhteydessä. Brian Kernighanin http://www.cs.princeton.edu/~bwk/btl.mirror/ sivustolla on koottu natiivi Win32-binääri, http://www.cs.princeton.edu/~bwk/btl.mirror/awk95.exe, joka on tallennettava nimelläawk.exe
(eikäawk95.exe
).If awk.exe ei löydy, Makefile.win ’ s install target ei suorita vaihtoja asennetussa .conf-tiedostot. Sinun täytyy manuaalisesti muokata asennettua .conf-tiedostot palvelimen käynnistämiseksi. Etsi ja korvaa kaikki ”@token@” tagit tarpeen mukaan.Visual Studio IDE löytääawk.exe
vain valikkovaihtoehdossa Tools -> Options -> (Projects ->) määritellyltä polulta tai suoritettavalta polulta hakemistoja. Varmistakaa awk.exe on järjestelmäsi polulla.huomaa myös, että jos käytät Cygwin-työkaluja (http://www.cygwin.com/), awk-apuohjelman nimi ongawk.exe
ja että tiedostoawk.exe
on todellisuudessa symbolinen linkkigawk.exe
– tiedostoon. Windowsin komentotulkki ei tunnista symlinkkejä, ja tämän rakennuksen vuoksi InstallBin epäonnistuu. Korjausliike on poistaaawk.exe
cygwin-asennuksesta ja kopioidagawk.exe
awk.exe
. Huomaa myös gawk 3.0: n Cygwin/mingw-portit.x oli buginen, Päivitä 3.1.x ennen kuin yrität käyttää mitään gawk-porttia. -
zlib-kirjasto (täsmennyssivu
mod_deflate
)Zlib on asennettava alihakemistoon
srclib
, jonka nimi onzlib
. Tämä on rakennettava paikalleen. Zlib voidaan saada http://www.zlib.net/ —mod_deflate
on vahvistettu toimivan oikein versiolla 1.2.3.nmake -f win32\Makefile.msc
nmake -f win32\Makefile.msc test -
OpenSSL-kirjastot (
mod_ssl
jaab.exe
ssl-tuella)OpenSSL-kirjasto on salausohjelmisto. Maassa, jossa tällä hetkellä asut, saattaa olla rajoituksia salausohjelmistojen tuonnille, hallussapidolle, käytölle ja/tai jälleenviennille toiseen maahan. Ennen kuin käytät mitään salausohjelmistoa, tarkista maasi lait, asetukset ja käytännöt, jotka koskevat salausohjelmiston tuontia, hallussapitoa tai käyttöä ja jälleenvientiä, nähdäksesi, onko tämä sallittua. Lisätietoja kohdassa http://www.wassenaar.org/.OpenSSL: n konfigurointi ja rakentaminen edellyttää Perl: n asentamista.
OpenSSL on asennettava
srclib
alihakemistoonopenssl
, joka on saatu http://www.openssl.org/source/, jotta voidaan kootamod_ssl
taiabs.exe
projekti, joka on ab.c SSL-tuki käytössä. Valmistella OpenSSL voidaan liittää Apache mod_ssl tai abs.exe, ja poista patentti encumed ominaisuuksia OpenSSL, saatat käyttää seuraavia build-komentoja: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.makzlib-Dynamicin käyttö ei ole suositeltavaa, koska se siirtää SSL-virtojen deflatoinnin kustannukset ensimmäiseen pyyntöön, jonka on ladattava zlib dll. Huomaa ehdotettu laastari mahdollistaa-L lippu toimimaan windows rakentaa, korjaa nimi zdll.lib ja varmistaa .pdb-tiedostot luodaan vianmääritystä varten. Jos kokoonpanijaa ei ole asennettu, voit lisätä no-asm: n ja käyttää ms\do_ms.bat: tä ms\do_masm: n sijasta.bat script. -
Tietokantakirjastot (
mod_dbd
jamod_authn_dbm
)apr-util-kirjasto altistaa DBM (keyed database) – ja DBD (query oriented database) – asiakastoiminnot httpd-palvelimelle ja sen moduuleille, kuten todennukselle ja valtuutukselle. Sdbm dbm ja odbc dbd tarjoajat kootaan ehdoitta.
dbd-tukeen kuuluvat Oracle instantclient-paketti, MySQL, PostgreSQL ja sqlite. Jos haluat rakentaa nämä kaikki, määritä esimerkiksi LIB sisältämään kirjastopolun, sisällytä otsikkopolku ja polku sisältämään kaikkien neljän SDK: n DLL bin-polku ja aseta dbd_list-ympäristömuuttuja ilmoittamaan, mitkä asiakasohjaimen SDK: t on asennettu oikein, esim.;
set DBD_LIST=sqlite3 pgsql oracle mysql
samoin, DBM tukea voidaan laajentaa dbm_list rakentaa Berkeley DB tarjoaja (db) ja/tai gdbm tarjoaja, määrittämällä vastaavasti lib, sisällytä ja polku ensin varmistaa asiakaskirjaston libs ja otsikot ovat käytettävissä.
set DBM_LIST=db gdbm
tietokantajakauman valinnasta riippuen voi olla tarpeen muuttaa varsinaista linkkikohteiden nimeä (esim.gdbm.lib vs. libgdb.lib), jotka on lueteltu vastaavassa.dsp/.mak tiedostot hakemistoissa srclib \ apr-util\dbd or …\dbm.Katso Readme-win32.txt tiedosto Lisää vinkkejä saamiseksi eri tietokanta kuljettaja SDKs.
rakentaminen Unix-lähteistä
Apache HTTP-Palvelinprojektin käytäntönä on julkaista vain Unix-lähteitä. Ladattavissa olevat Windows-lähdekoodipaketit ovat vapaaehtoisten toimittamia, eikä niitä välttämättä ole saatavilla jokaiseen julkaisuun. Voit silti rakentaa palvelimen Windows Unix source tarball vain muutamalla lisävaiheella.
- Lataa ja pura Unix source tarball viimeisintä versiota varten.
- Lataa ja pura UNIX source tarball viimeisintä versiota varten APR, AR-Util ja APR-Iconv, aseta nämä lähteet hakemistoihin httpd-2.x. x\srclib \ Huhtikuu, httpd-2.x. x\srclib \ apr-util ja httpd-2.x.x\srclib\apr-iconv
- avaa komentokehote ja CD httpd-2: een.x. x-kansio
- Suorita rivinloppujen muunnosapuohjelma kehotteessa;
perl srclib\apr\build\lineends.pl
voit nyt rakentaa palvelimen Visual Studio kehitysympäristön avulla IDE. Palvelimen komentorivirakentaminen ei ole mahdollista Unix-lähteistä, ellet vie sitä .mak tiedostot selitetty alla.
Komentorivirakentaminen
Makefile.win
on ylätason Apache makefile. Kääntääksesi Apachen Windowsiin, käytä vain yhtä seuraavista komennoista rakentaaksesi release
tai debug
flavorin:
nmake /f Makefile.win _apacher
nmake /f Makefile.win _apached
kumpikin komento kääntää Apachen. Jälkimmäinen poistaa optimointi tuloksena tiedostot, jolloin on helpompi askel koodin löytää vikoja ja jäljittää ongelmia.
voit lisätä apr-util dbd – ja dbm-tarjoajavalintasi make (ympäristö) – lisämuuttujilla dbd_list ja dbm_list, katso yllä olevat kommentit Tietokantakirjastoista. Tarkista alkuperäiset Kommentit Makefile.voita lisävaihtoehtoja, jotka voidaan antaa, kun vedotaan build.
Developer Studio Workspace IDE Build
Apache voidaan kääntää myös VC++: n Visual Studio-kehitysympäristön avulla. Prosessin yksinkertaistamiseksi käytössä on visuaalinen Studiotyötila, Apache.dsw
. Tämä työtila paljastaa koko luettelon toimivista .dsp
projekteista, joita tarvitaan täydelliseen Apache-binäärijulkaisuun. Se sisältää riippuvuudet hankkeiden välillä sen varmistamiseksi, että ne on rakennettu asianmukaisessa järjestyksessä.
avaa Apache.dsw
työtila ja valitse aktiiviseksi projektiksi InstallBin
(Release
tai Debug
rakenna halutulla tavalla). InstallBin
aiheuttaa kaikkien projektiin liittyvien projektien rakentamisen ja vetoaa sitten Makefile.win
siirtääkseen kootut suoritustiedostot ja DLL: t. Voit muokata INSTDIR=
– valintaa muuttamalla InstallBin
: n asetuksia, Yleistä-välilehteä, Rakenna-komentorivimerkintää. INSTDIR
oletusarvoisesti /Apache2
– hakemistoon. Jos haluat vain koekäännöksen (asentamatta sitä), voit rakentaa BuildBin
projektin.
.dsp
projektin tiedostot jaetaan Visual Studio 6.0 (98) – muodossa. Visual C++ 5.0 (97) tunnistaa ne. Visual Studio 2002: n (. NET) ja myöhempien käyttäjien tulee muuntaa Apache.dsw
plus .dsp
– tiedostot Apache.sln
plus .msproj
– tiedostoiksi. Muista muuntaa .msproj
tiedosto uudelleen, jos sen lähde .dsp
tiedosto muuttuu! Tämä on todella triviaalia, vain avata Apache.dsw
VC++ 7.0 IDE jälleen ja reconvert.
perl srclib\apr\build\cvtdsp.pl -2005
muuntaa /d liput RC liput käyttää vaihtoehtoista, jäsennettävissä syntaksi; valitettavasti tämä syntaksi ei tue Visual Studio 97 tai sen viedään .mak-tiedostot. Näitä / D-lippuja käytetään pitkän kuvauksen läpäisemiseen mod_apachemodule.so tiedostot jaettuun .RC resource version-identifier build.
perl srclib\apr\build\cvtdsp.pl -ossl11
Visual Studio 2002: n (. NET) ja myöhempien käyttäjien tulisi myös käyttää Rakentamisvalikkoa, Konfiguraationhallintaikkunaa poistaakseen sekä Debug
että Release
Ratkaisumoduulit abs
, mod_deflate
ja mod_ssl
komponentit, sekä kaikki osat alkaen apr_db*
. Nämä moduulit rakennetaan vedoten nmake
, tai IDE suoraan BinBuild
tavoitteeseen, joka rakentaa moduulit ehdollisesti, jos srclib
hakemistot openssl
ja/tai zlib
ovat olemassa, ja perustuu DBD_LIST
ja DBM_LIST
ympäristömuuttujien asettamiseen.
viedään komentorivi .mak-tiedostot
viedyt .mak
– tiedostot aiheuttavat suuremman hässäkän, mutta niitä tarvitaan, jotta Visual C++ 5.0-käyttäjät voivat rakentaa mod_ssl
, abs (ab
SSL-tuella) ja/tai mod_deflate
. Että .mak-tiedostot tukevat myös laajempaa C++ – työkaluketjun jakelua, kuten Visual Studio Expressiä.
sinun täytyy ensin rakentaa kaikki projektit, jotta voit luoda kaikki dynaamiset automaattisesti luotavat kohteet, jotta riippuvuudet voidaan jäsentää oikein. Rakenna koko projekti Visual Studion sisältä 6.0 (98) IDE, käyttäen BuildAll
– tavoitetta, käytä sitten Projektivalikon vientiä kaikille makefileille (tarkistetaan ”riippuvuuksien kanssa”.) Suorita seuraava komento korjataksesi absoluuttiset polut suhteellisiksi poluiksi, jotta ne rakentuvat minne tahansa:
perl srclib\apr\build\fixwin32mak.pl
sinun on kirjoitettava tämä komento httpd – lähdepuun ylätason hakemistosta. Jokainen .mak
ja .dep
projektitiedosto nykyisessä hakemistossa ja alla korjataan ja aikaleimat mukautetaan vastaamaan .dsp
: ää.
Tarkista aina luodut .mak
ja .dep
tiedostot Alustan SDK: lle tai muille paikallisille, konekohtaisille tiedostopoluille. DevStudio\Common\MSDev98\bin\
(VC6) – hakemistossa on sysincl.dat
– tiedosto, joka listaa kaikki poikkeukset. Päivitä tämä tiedosto (sisältäen sekä eteen-että taaksepäin ladatut polut, kuten sys/time.h
ja sys\time.h
), jotta tällaiset uudemmat riippuvuudet voidaan jättää huomiotta. Paikallisten asennuspolkujen sisällyttäminen hajautettuun .mak
– tiedostoon aiheuttaa käännöksen epäonnistumisen kokonaan.
Jos palautat projektitiedostoja tarkistavan korjaustiedoston,meidän on toimitettava projektitiedostot Visual Studio 6.0-muodossa. Muutosten tulee olla yksinkertaisia, minimaalisilla kokoelma-ja linkkilipuilla, jotka voidaan tunnistaa kaikissa Visual Studio-ympäristöissä.
asennus
Kun Apache on käännetty, se on asennettava palvelimen juurihakemistoonsa. Oletusarvo on saman aseman \Apache2
– kansio.
rakentaaksesi ja asentaaksesi kaikki tiedostot haluttuun kansioon dir automaattisesti, Käytä jotain seuraavista komennoista nmake
:
nmake /f Makefile.win installr INSTDIR=dir
nmake /f Makefile.win installd INSTDIR=dir
dir-argumentti arvolle INSTDIR
antaa asennushakemiston; se voidaan jättää pois, jos Apache on asennettava asemaan \Apache22
(nykyisestä asemasta).
Varoitus apassien rakentamisesta kehityspuusta
.dsp
tiedostot säilyvät välillä release
buildings. .mak
tiedostoja ei ole uudistettu, mikä johtuu arvostelijoiden valtavasta ajanhukasta. Siksi et voi käyttää yllä olevia NMAKE
– komentoja muokattujen .dsp
projektitiedostojen rakentamiseen, ellet sitten vie kaikkia .mak
– tiedostoja itse projektista. Tämä on tarpeetonta, jos rakennat Microsoft Developer Studio ympäristössä.