Jeg skulle installere PDO_PGSQL-driveren for nylig på Leopard, og jeg stødte på en lang række problemer. I min søgen efter svar faldt jeg over dette spørgsmål. Nu har jeg det installeret med succes, og så selvom dette spørgsmål er ret gammelt, håber jeg, at det, jeg har fundet, kan hjælpe andre (som mig selv), som uden tvivl vil løbe ind i lignende problemer.
Den første ting, du skal gøre, er at installere PEAR, hvis du ikke allerede har gjort det, da det ikke kommer installeret på Leopard som standard.
Når du har gjort det, skal du bruge PECL-installationsprogrammet til at downloade PDO_PGSQL-pakken:
$ pecl download pdo_pgsql
$ tar xzf PDO_PGSQL-1.0.2.tgz
(Bemærk:du skal muligvis køre pecl
som superbruger, dvs. sudo pecl
.)
Efter det, da PECL-installationsprogrammet ikke kan installere udvidelsen direkte, skal du bygge og installere det selv:
$ cd PDO_PGSQL-1.0.2
$ phpize
$ ./configure --with-pdo-pgsql=/path/to/your/PostgreSQL/installation
$ make && sudo make install
Hvis alt går godt, bør du have en fil kaldet "pdo_pgsql.so
" sidder i en mappe, der skulle ligne "/usr/lib/php/extensions/no-debug-non-zts-20060613/
" (PECL-installationen skulle have udsendt den mappe, den installerede udvidelsen til).
For at afslutte installationen skal du redigere din php.ini
fil. Find sektionen mærket "Dynamiske udvidelser", og under listen over (sandsynligvis kommenterede) udvidelser tilføjer du denne linje:
extension=pdo_pgsql.so
Hvis det nu antages, at det er første gang, du har installeret PHP-udvidelser, er der to yderligere trin, du skal tage for at få dette til at virke. Først i php.ini
, find extension_dir
direktiv (under "Sti og mapper"), og skift det til det bibliotek, som pdo_pgsql.so
fil blev installeret i. For eksempel min extension_dir
direktivet ser sådan ud:
extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20060613"
Det andet trin, hvis du er på en 64-bit Intel Mac, involverer at få Apache til at køre i 32-bit tilstand. (Hvis der er en bedre strategi, vil jeg gerne vide det, men indtil videre er dette det bedste, jeg kunne finde.) For at gøre dette skal du redigere ejendomslistefilen, der findes på /System/Library/LaunchDaemons/org.apache.httpd.plist
. Find disse to linjer:
<key>ProgramArguments</key>
<array>
Tilføj disse tre linjer under dem:
<string>arch</string>
<string>-arch</string>
<string>i386</string>
Nu skal du bare genstarte Apache, og PDO_PGSQL vil være oppe og køre.