Наскоро трябваше да инсталирам драйвера PDO_PGSQL на Leopard и се натъкнах на множество проблеми. В търсене на отговори попаднах на този въпрос. Сега го инсталирах успешно и така, въпреки че този въпрос е доста стар, се надявам, че това, което открих, може да помогне на други (като мен), които несъмнено ще се сблъскат с подобни проблеми.
Първото нещо, което трябва да направите, е да инсталирате PEAR, ако още не сте го направили, тъй като не се инсталира на Leopard по подразбиране.
След като направите това, използвайте инсталатора на PECL, за да изтеглите пакета PDO_PGSQL:
$ pecl download pdo_pgsql
$ tar xzf PDO_PGSQL-1.0.2.tgz
(Забележка:може да се наложи да стартирате pecl
като суперпотребител, т.е. sudo pecl
.)
След това, тъй като инсталаторът на PECL не може да инсталира разширението директно, ще трябва да го изградите и инсталирате сами:
$ cd PDO_PGSQL-1.0.2
$ phpize
$ ./configure --with-pdo-pgsql=/path/to/your/PostgreSQL/installation
$ make && sudo make install
Ако всичко върви добре, трябва да имате файл, наречен "pdo_pgsql.so
" се намира в директория, която трябва да изглежда нещо като "/usr/lib/php/extensions/no-debug-non-zts-20060613/
" (PECL инсталацията трябва да е извела директорията, в която е инсталирало разширението).
За да финализирате инсталацията, ще трябва да редактирате вашия php.ini
файл. Намерете секцията с надпис „Динамични разширения“ и под списъка с (вероятно коментирани) разширения добавете този ред:
extension=pdo_pgsql.so
Сега, ако приемем, че това е първият път, когато инсталирате PHP разширения, има две допълнителни стъпки, които трябва да предприемете, за да накарате това да работи. Първо, в php.ini
, намерете extension_dir
директива (под "Пътища и директории") и я променете в директорията, която pdo_pgsql.so
файл беше инсталиран. Например моят extension_dir
Директивата изглежда така:
extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20060613"
Втората стъпка, ако сте на 64-битов Intel Mac, включва карането на Apache да работи в 32-битов режим. (Ако има по-добра стратегия, бих искал да знам, но засега това е най-доброто, което мога да намеря.) За да направите това, редактирайте файла със списък със свойства, намиращ се на /System/Library/LaunchDaemons/org.apache.httpd.plist
. Намерете тези два реда:
<key>ProgramArguments</key>
<array>
Под тях добавете тези три реда:
<string>arch</string>
<string>-arch</string>
<string>i386</string>
Сега просто рестартирайте Apache и PDO_PGSQL ще работи и ще работи.