Witam, > no witam o ile pamiętam to to właśnie odpowiada za współprace > oracla z php "apt-get install libphp-adodb" Tak tylko to jest uniwersalna proteza do baz danych i przez nią Oracle traci wszystkie swoje plusy. Ja chciałem doinstalować coś takiego jak oci8.so. Jest to moduł do php dostarczany jako zródła przez Oracla. I trzeba sobie to dokompilować do php. Nie mając żadnych odpowiedzi szukałem i kombinowałem i w końcu zrobiłem, ale nie tak jak chiałem - czyli nie było to szybko i prosto - choć trwało to dużo szybciej niż wcześniejsze próby zrobienia tego prościej ;) Tak dla potomnych poniżej krótko opiszę, bo dużo jest pytań w googlach a nie ma dokładnych odpowiedzi i wskazówek co trzeba zrobić a czego nie można.
Zaczęło się od tego, że po zainstalowaniu Oracla i dodaniu jego składnika OCI dostajemy pliki żródłowe (oci.h, oci08.c, ...). A trzeba z nich zrobić extension do php (oci8.so). PHP ma coś takiego do tworzenia modułów jak phpize i długo walczyłem by móc to użyć - ale nie da się bo coś jest nie tak z phpem oraz z oci8 (nie ma też kilku plików konfiguracyjnych do tego). Udało się mi znaleść na www.apt-get.org pakiet php4-oci8_4.2.2 z którego wydobyłem oci8.so ale niestety nie działa na Woodym - w czasie ładowania php przez apache krzyczy w error.log, że jest jakaś niezgodność (chodzi tu chyba o wersję zendapi php i oci8.sa). Chcąc niechcąc ściągnąłem żródła php4, oczywiście Debianowe, i przystąpiłem do ich kompilacji. I tak: Dla Oracle 9 musimy zrobić link libclntsh.so.9.0 do libclntsh.so.8.0 w katalogu $ORACLE_HOME/lib. Należy do w pliku debian/rules dodać na początku: export ORACLE_HOME=MOJ_KATALOG_DOMOWY_ORACLA export LD_LIBRARY_PATH=/lib:/usr/lib:$ORACLE_HOME/lib Oraz trochę dalej w definicji COMMON_CONFIG dopisać: --with-oci8=shared,${ORACLE_HOME} nie zapominając o kontynuacji linii czyli znaku \ No i zaczynamy kompilację wydając komendę dpkg-buildpackage. Gdy będzie nam brakowało jakiegoś pakietu to ładnie to wypisze (a wymaga bardzo dużo pakietów *-dev), gdy nie to mamy przerwę na herbatę. Nie wiem dlaczego, ale ja musiałem jeszcze dodać prawa do wykonania dla debian/rules (chmod +x debian/rules) i dopiero wtedy herbatka mogła być zrobiona i wypita ;). Po skończeniu musimy przenieść ręcznie plik oci8.so z katalogu debian/php4/usr/lib/php4/20010901/ do katalogu /usr/lib/php4/20010901/ oraz dopisać w /etc/php4/apache/php.ini linijkę: extension=oci8.so Myślałem, że dodanie modułu wystarczy ale nie ;( trzeba jeszcze przeinstalować pakiet php4_4.1.2 na ten stworzony (dpkg -i php4_4.1.2-6woody3_i386.deb). I po tym wszystkim w końcu w phpinfo() pokazało oci8 :))) Bardzo pomocna okazała się strona: http://pl.php.net/oci8/ gdzie w zawartych tam mailach i dyskusjach są porozrzucane te wszystkie informacje. Może by tak zrobić opis na debianusers.org ? -- Pozdrowienia Robert