Niedawno musiałem zainstalować sterownik PDO_PGSQL w systemie Leopard i napotkałem wiele problemów. W poszukiwaniu odpowiedzi natknąłem się na to pytanie. Teraz udało mi się go pomyślnie zainstalować, więc chociaż to pytanie jest dość stare, mam nadzieję, że to, co znalazłem, może pomóc innym (takim jak ja), którzy bez wątpienia napotkają podobne problemy.
Pierwszą rzeczą, którą musisz zrobić, to zainstalować PEAR, jeśli jeszcze tego nie zrobiłeś, ponieważ nie jest on domyślnie instalowany w systemie Leopard.
Gdy to zrobisz, użyj instalatora PECL, aby pobrać pakiet PDO_PGSQL:
$ pecl download pdo_pgsql
$ tar xzf PDO_PGSQL-1.0.2.tgz
(Uwaga:może być konieczne uruchomienie pecl
jako superużytkownik, tj. sudo pecl
.)
Następnie, ponieważ instalator PECL nie może bezpośrednio zainstalować rozszerzenia, musisz samodzielnie je zbudować i zainstalować:
$ cd PDO_PGSQL-1.0.2
$ phpize
$ ./configure --with-pdo-pgsql=/path/to/your/PostgreSQL/installation
$ make && sudo make install
Jeśli wszystko pójdzie dobrze, powinieneś mieć plik o nazwie „pdo_pgsql.so
" siedzi w katalogu, który powinien wyglądać mniej więcej tak "/usr/lib/php/extensions/no-debug-non-zts-20060613/
" (instalacja PECL powinna wypisać katalog, w którym zainstalowało rozszerzenie).
Aby sfinalizować instalację, musisz edytować swój plik php.ini
plik. Znajdź sekcję oznaczoną „Rozszerzenia dynamiczne”, a pod listą (prawdopodobnie skomentowanych) rozszerzeń dodaj ten wiersz:
extension=pdo_pgsql.so
Teraz, zakładając, że jest to pierwszy raz, kiedy instalujesz rozszerzenia PHP, musisz wykonać dwa dodatkowe kroki, aby to zadziałało. Najpierw w php.ini
, znajdź extension_dir
dyrektywy (w sekcji „Ścieżki i katalogi”) i zmień ją na katalog, w którym pdo_pgsql.so
plik został zainstalowany w. Na przykład mój extension_dir
dyrektywa wygląda tak:
extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20060613"
Drugi krok, jeśli korzystasz z 64-bitowego Intel Mac, polega na uruchomieniu Apache w trybie 32-bitowym. (Jeśli istnieje lepsza strategia, chciałbym się dowiedzieć, ale na razie jest to najlepsza, jaką mogłem znaleźć.) Aby to zrobić, edytuj plik listy właściwości znajdujący się w /System/Library/LaunchDaemons/org.apache.httpd.plist
. Znajdź te dwie linie:
<key>ProgramArguments</key>
<array>
Pod nimi dodaj te trzy wiersze:
<string>arch</string>
<string>-arch</string>
<string>i386</string>
Teraz po prostu uruchom ponownie Apache, a PDO_PGSQL zacznie działać.