PHP & PostgreSQL
hexes 25 июня, 2010 - 10:27
Здравствуйте уважаемые,
есть небольшой затык при установке PHP с поддержкой PostgreSQL
checking for PostgreSQL support... yes checking for pg_config... not found configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path !!! Please attach the following file when seeking support: !!! /var/tmp/portage/dev-lang/php-5.3.2/work/php-5.3.2/config.log * ERROR: dev-lang/php-5.3.2 failed: * econf failed * * Call stack: * ebuild.sh, line 54: Called src_compile * environment, line 4834: Called eblit-run 'src_compile' 'v1' * environment, line 1997: Called eblit-php-src_compile * src_compile-v1.eblit, line 17: Called php_sapi_build 'cli' * src_compile-v1.eblit, line 52: Called econf '--prefix=/usr/lib/php5' '--mandir=/usr/lib/php5/man' '--infodir=/usr/lib/php5/info' '--libdir=/usr/lib/php5/lib' '--without-pear' '--disable-maintainer-zts' '--disable-bcmath' '--with-bz2' '--enable-calendar' '--with-curl' '--with-curlwrappers' '--without-enchant' '--disable-exif' '--disable-ftp' '--with-gettext' '--without-gmp' '--disable-intl' '--disable-ipv6' '--without-kerberos' '--enable-mbstring' '--with-mcrypt' '--without-mssql' '--with-onig=/usr' '--with-openssl' '--with-openssl-dir=/usr' '--disable-pcntl' '--disable-pdo' '--with-pgsql' '--without-pspell' '--without-recode' '--disable-shmop' '--with-snmp' '--enable-soap' '--enable-sockets' '--without-sqlite3' '--with-sybase-ct' '--disable-sysvmsg' '--disable-sysvsem' '--disable-sysvshm' '--with-tidy' '--disable-wddx' '--with-xmlrpc' '--without-xsl' '--enable-zip' '--with-zlib' '--disable-debug' '--without-cdb' '--without-db4' '--disable-flatfile' '--without-gdbm' '--disable-inifile' '--without-qdbm' '--with-freetype-dir=/usr' '--with-t1lib=/usr' '--disable-gd-jis-conv' '--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--without-xpm-dir' '--with-gd' '--without-interbase' '--without-interbase' '--without-mysqli' '--without-oci8' '--with-readline' '--without-libedit' '--without-mm' '--without-sqlite' '--with-pcre-regex=/usr' '--with-pcre-dir=/usr' '--with-config-file-path=/etc/php/cli-php5' '--with-config-file-scan-dir=/etc/php/cli-php5/ext-active' '--enable-cli' '--disable-cgi' '--disable-embed' '--without-apxs2' * ebuild.sh, line 544: Called die * The specific snippet of code:
Суть проблемы мне понятна, найти не может либу, она лежит тут:
ls /usr/lib/postgresql-8.4/lib/ libecpg.a libecpg_compat.a libpgport.a libpgtypes.so.3.1 libpq.so.5.2 libecpg.so libecpg_compat.so libpgtypes.a libpq.a pgxs libecpg.so.6 libecpg_compat.so.3 libpgtypes.so libpq.so libecpg.so.6.1 libecpg_compat.so.3.1 libpgtypes.so.3 libpq.so.5
Вопрос в чём: почему проблема возникла? Дело в неправильном ебилде? Или как?
Я знаю что можно руками указать путь до этой либы. Но как мне кажется это не самый true способ, или я не прав?
Вообще както меня смутил новый замут относительно postgresql -> postgresql-base&-server.
Что скажет общественность? Как быть?
»
- Для комментирования войдите или зарегистрируйтесь
В самом начале Вашей цитаты
В самом начале Вашей цитаты написано:
`configure: error: Cannot find libpq-fe.h`
До этих строк скорее всего написано, в каком каталоге их хочет найти. Например, в каталоге /usr/lib/postgresql/lib .
Я думаю можно сделать линк на этот каталог из /usr/lib/postgresql-8.4/lib/
(возможно и не прав)
Вы не правы. (Чуть чуть
Вы не правы. (Чуть чуть поправил свой первый пост, добавил в цитату строки)
Ветка 5.2 компилируется
Ветка 5.2 компилируется ?
eselect postgresql list ?
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
eselect postgresql
eselect postgresql list
Available postgresql installations
8.4 <-* base-8.4.4
Нет, 5.2 тоже не компилируется по той же причине.
postgresql-config set-all
Видимо что то я не понимаю... Или делаю не так.
Потыкал в postgresql-config
Потыкал в postgresql-config пальцами...
Видимо потыкал правильно, видимо где то создался симлинк, как рез-т - РНР начал компилиться!
Немножко оффтопа:
Есть у ПЫХА ещё один модуль Sybase-CT который сделат не правильно, и каждый раз при перекомпиляции РНР приходится после распаковки кодов менять в этом модуле несколько строк (там имена файлов в старой нотации указаны).
Знаю что это не TRUE метод, знаю что можно написать патч, НЕ знаю как. Можете помочь?
Могу указать имена файлов и что на что нужно заменить...
из корневой диры с
из корневой диры с исходниками сделай diff -uR old_dir new_dir > your.patch
и положи на пастебин
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
Не понял, откуда как
Не понял, откуда как сделать?
В /usr/tmp/portage/dev-lang/php-5.3.2/work/php-5.3.2/ext/sybase-ct/
есть 2 файла config.m4 & php_sybase_ct.h.
я в них уже всё поправил.
diff -uR ./ /mnt/ser/ase/php/new/ > /home/hexes/dddddd
diff: invalid option -- 'R'
diff: Try `diff --help' for more information.
По теме: компиляция пошла...
По теме: компиляция пошла... трещинь пошоль.... пошоль...
И фыбросили ракафину с:
http://pastebin.com/vKjGuaLN
Вообщем фиг... :(
Делаем вид что ничего не
Делаем вид что ничего не заметили (5.3 всё же пока что ~x86), пробуем откомпилить 5.2 ветку, получаем тот же х...трещин:
http://pastebin.com/nRS4jLHa
UP
UP
Никаких мыслей?
Никаких мыслей?