L'installation de Oracle Instant Client est certainement la solution la plus simple de disposer d'un accès aux bases Oracle depuis un client Unix/Linux/Windows/MacOS. Jusqu'à la version 10.2.0.1, Oracle fournissait directement des RPM utilisables sous Fedora. Depuis la sortie des nouvelles versions, seules les archives aux formats ZIP sont disponibles sur le site.

Bien sur l'idéal serait que je puisse mettre les RPM sur mon dépôt, cependant, la licence d'utilisation ne me le permet sans doute pas.

Voici donc une petit guide, que j'espère trés simple, qui vous permettra de les construire vous même.

Préparez un environnement de construction

Faut-il encore rappeler que les RPM ne doit jamais être construit sous le compte administrateur ?

Tutorial : RPM : environnement de construction

Téléchargez les archives depuis le site officiel

Adresse : http://www.oracle.com/technology/tech/oci/instantclient/instantclient.html

Récupérez et enregistrez dans votre dossier SOURCES:

  • instantclient-basic-linux32-10.2.0.2-20060331.zip (33 Mo)
  • instantclient-jdbc-linux32-10.2.0.2-20060331.zip (1,4 Mo)
  • instantclient-sqlplus-linux32-10.2.0.2-20060331.zip (0,7 Mo)
  • instantclient-sdk-linux32-10.2.0.2-20060331.zip (0,6 Mo)
  • instantclient-odbc-linux32-10.2.0.2-20060331.zip (0,3 Mo)

N.B. pour les versions 64 bits, il faut prendre les instantclient-*-linux-x86-64-10.2.0.2-20060228.zip

Installez les soures du RPM

Enregistrez le fichier oracle-instantclient-10.2.0.2-3.fc6.remi.nosrc.rpm dans un dossier et installez le :

rpm -ivh oracle-instantclient-10.2.0.2-3.fc6.remi.nosrc.rpm

Le fichier oracle-instantclient.spec sera enregistré dans votre dossier SPEC.

Les directives de construction du RPM suivent la même stratégie qu'Oracle dans les anciennes versions , c'est à dire que les entêtes (fichiers .h) sont enregistrées dans le dossier /usr/include/oracle/10.2.0.2/client et les bibliothèques dans le dossier /usr/lib/oracle/10.2.0.2/client/lib. Par contre la configuration de l'éditeur de lien dynamique est modifiée pour trouver ces bibliothèques.

Lancez la construction

Depuis votre dossier $HOME: vérifier que le fichier .rpmmacros ne contienne pas la directive :

%__arch_install_post /usr/lib/rpm/check-rpaths /usr/lib/rpm/check-buildroot

Si elle est présente, commentez là (insérez un # en début de ligne) pour cette opération.

Depuis votre dossier SPEC :

rpmbuild -bb oracle-instantclient.spec

Vous devez obtenir les RPM attendus dans le dossier RPMS/i386:

  • oracle-instantclient-basic-10.2.0.2-1.fc5.remi.i386.rpm
  • oracle-instantclient-devel-10.2.0.2-1.fc5.remi.i386.rpm
  • oracle-instantclient-jdbc-10.2.0.2-1.fc5.remi.i386.rpm
  • oracle-instantclient-odbc-10.2.0.2-1.fc5.remi.i386.rpm
  • oracle-instantclient-sqlplus-10.2.0.2-1.fc5.remi.i386.rpm

Installez et utilisez vos RPM

Vous pouvez maintenant les installer et les utiliser. Par exemple pour avoir Accès aux bases de données Oracle en PHP

Comme toujours n'hésitez pas à me faire part de vos remarques.