Asentaminen PHP kanssa unixODBC

Original page: http://www.unixodbc.org/doc/php3.html

Nick Gorham

Tämä asennusprosessi perustuu apache 1.3.12 ja PHP 3.0.16, mutta on identtinen takaisin ainakin apache 1.3.6 ja php 3.0.9. PHP4: stä beta 3 stä on konfiguroitu vaihtoehto käyttää unixODBC tä, joten useimmat seuraavista ovat tarpeettomia.

Tämä asiakirja olettaa, että unixODBC on rakennettu ja asennettu, tässä tapauksessa oletussijainnissa /usr/local, ja että sekä Apache että PHP ovat jääneet käyttäjän kotihakemistoon.

1. Apache-hakemistossa suorita seuraava komento

./configure --prefix=/www

plus kaikki muut tarvittavat paikalliset asetukset

2. Luo tiedosto /usr/local/include nimeltään odbc.h, joka sisältää seuraavat kolme riviä

   #include <sql.h>
   #include <sqlext.h>
   #include <odbcinst.h>

korvaamalla /www haluamallasi apache-asennuspolulla

3. Siirry PHP-hakemistoon Määritä seuraavat ympäristömuuttujat

   CFLAGS="-I/usr/local/include"
   LDFLAGS=
   CUSTOM_ODBC_LIBS="-L/usr/local/lib -lodbc"

muista viedä nämä muuttujat

   export CFLAGS LDFLAGS CUSTOM_ODBC_LIBS

4. Määritä PHP kanssa

  ./configure --with-apache=../apache_1.3.12 --with-custom-odbc=/usr/local  --enable-track-vars

plus kaikki muut paikalliset asetukset, joita tarvitset sitten…

   make
   make install

5. Palaa apache-hakemistoosi ja tee se

   ./configure --prefix=/www --activate-module=src/modules/php3/libphp3.a
   make
   make install

6. Palaa PHP-hakemistoon Sitten lainaus PHP stä INSTALL

   cp php3.ini-dist /usr/local/lib/php3.ini
   You can edit /usr/local/lib/php3.ini file to set PHP options.
   Edit your httpd.conf or srm.conf file and add:
     AddType application/x-httpd-php3 .php3

Ja sen pitäisi olla se.

Apache DSO-tuki

Lisäongelmaa on löytynyt, jos rakennat PHP dynaamisena jaetun objektina apache-palvelimella. Koska oletuksena unixODBC rakentaa thread support ja oletusarvoisesti apache ei, jos ne eivät liity yhteen rakentaa ja vain kohtaavat ajoaika yhdistelmä epäonnistuu.

Tässä eetterissä on kaksi tapaa määritellä ja viedä seuraava ympäristömerkki ennen apache rakentamista

export CFLAGS=-D_REENTRANT
export LFLAGS=-lpthread
./configure --prefix=www

tai rakentaa unixODBC ilman lankatukea konfiguroimalla ./configure –enable-threads=no

Kummassakin tapauksessa muista poistaa tiedosto config.cache Apachen tai unixODBC n juurihakemistosta