The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Configure php5 + firebird2.1 + fedora core 8, !*! kassy_k, 12-Май-08, 11:32  [смотреть все]
Помогите с решением проблемы:
ОС: FedoraCore8

Установил: Firebird2.1, Apache2, PHP5 (динамически подгружаемый модуль).
Требуется установить поддержку Firebird, т.е. прикрутить --with-interbase=shared,/opt/firebird к php

Когда пытаюсь конфигурировать с этой опцией php, вываливается старая добрая ошибка:

checking for InterBase support... yes, shared
checking for isc_detach_database in -lfbclient... no
checking for isc_detach_database in -lgds... no
checking for isc_detach_database in -lib_util... no
configure: error: libgds, libib_util or libfbclient not found! Check config.log for more information.

Кусок файла config.log гласит:

configure:3814: checking for InterBase support
configure:3857: result: yes, shared
configure:3969: checking for isc_detach_database in -lfbclient
configure:4004: gcc -o conftest -g -O2  -Wl,-rpath,/opt/firebird//usr/lib/gcc/i386-redhat-linux/4.1.2/ -L/opt/firebird//usr/lib/gcc/i386-redhat-linux/4.1.2/  conftest.c -lfbclient   >&5
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libfbclient.so: undefined reference to `_Unwind_RaiseException'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libfbclient.so: undefined reference to `_Unwind_GetLanguageSpecificData'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libfbclient.so: undefined reference to `_Unwind_Resume'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libfbclient.so: undefined reference to `_Unwind_DeleteException'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libfbclient.so: undefined reference to `_Unwind_GetTextRelBase'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libfbclient.so: undefined reference to `_Unwind_SetIP'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libfbclient.so: undefined reference to `_Unwind_GetDataRelBase'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libfbclient.so: undefined reference to `_Unwind_GetRegionStart'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libfbclient.so: undefined reference to `_Unwind_SetGR'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libfbclient.so: undefined reference to `_Unwind_GetIP'
collect2: ld returned 1 exit status
configure:4010: $? = 1
configure: failed program was:
| /* confdefs.h.  */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| /* end confdefs.h.  */
|
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char isc_detach_database ();
| int
| main ()
| {
| return isc_detach_database ();
|   ;
|   return 0;
| }
configure:4028: result: no
configure:4141: checking for isc_detach_database in -lgds
configure:4176: gcc -o conftest -g -O2  -Wl,-rpath,/opt/firebird//usr/lib/gcc/i386-redhat-linux/4.1.2/ -L/opt/firebird//usr/lib/gcc/i386-redhat-linux/4.1.2/  conftest.c -lgds   >&5
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libgds.so: undefined reference to `_Unwind_RaiseException'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libgds.so: undefined reference to `_Unwind_GetLanguageSpecificData'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libgds.so: undefined reference to `_Unwind_Resume'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libgds.so: undefined reference to `_Unwind_DeleteException'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libgds.so: undefined reference to `_Unwind_GetTextRelBase'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libgds.so: undefined reference to `_Unwind_SetIP'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libgds.so: undefined reference to `_Unwind_GetDataRelBase'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libgds.so: undefined reference to `_Unwind_GetRegionStart'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libgds.so: undefined reference to `_Unwind_SetGR'
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libgds.so: undefined reference to `_Unwind_GetIP'
collect2: ld returned 1 exit status
configure:4182: $? = 1
configure: failed program was:
| /* confdefs.h.  */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| /* end confdefs.h.  */
|
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char isc_detach_database ();
| int
| main ()
| {
| return isc_detach_database ();
|   ;
|   return 0;
| }
configure:4200: result: no
configure:4313: checking for isc_detach_database in -lib_util
configure:4348: gcc -o conftest -g -O2  -Wl,-rpath,/opt/firebird//usr/lib/gcc/i386-redhat-linux/4.1.2/ -L/opt/firebird//usr/lib/gcc/i386-redhat-linux/4.1.2/  conftest.c -lib_util   >&5
/tmp/ccEsRJxI.o: In function `main':
/HVol/dist/php-5.2.5/ext/interbase/conftest.c:19: undefined reference to `isc_detach_database'
collect2: ld returned 1 exit status
configure:4354: $? = 1
configure: failed program was:
| /* confdefs.h.  */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| /* end confdefs.h.  */
|
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char isc_detach_database ();
| int
| main ()
| {
| return isc_detach_database ();
|   ;
|   return 0;
| }
configure:4372: result: no
configure:4388: error: libgds, libib_util or libfbclient not found! Check config.log for more information.

Помогите!!! Кто что может сказать по этому поводу. Как поддержку нормально прикрутить?

  • Configure php5 + firebird2.1 + fedora core 8, !*! angra, 17:56 , 15-Май-08 (1)
  • Configure php5 + firebird2.1 + fedora core 8, !*! kassy_k, 18:34 , 15-Май-08 (2)
    ...Сам спрашивал - сам и отвечаю. :-)

    После долгого рытья инета решил покопаться сам. Проблема заключалась в том, что поддержка Firebird/Interbase должна компилироваться в отдельный модуль скриптом configure.

    Пересмотрев внимательно config.log, я понял, что скрипт не подхватывает библиотеку C++ libgcc_s.so. Поэтому в скрипте сделал небольшую поправку:

    Строка №49461:

    ---LIBS="-lfbclient  $LIBS"
    +++LIBS="-lfbclient -lgcc_s $LIBS"

    Не знаю, насколько это правомерно (проверить работоспособность еще не удалось), но библиотека создалась, установилась и поддержа включилась.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру