At få en Mac-installation af perl til at spille pænt med Oracle er lidt af en smerte - når den først kører, er den fantastisk, at få den til at køre er lidt frustrerende.
Nedenstående har fungeret for mig på et par forskellige intel-mac'er, der kunne godt være overflødige trin derinde, og det vil sandsynligvis ikke være det samme for andre platforme.
Dette vil kræve brug af shell, root-brugeren og en smule CPANing - intet for besværligt
Opret først en mappe til oracle pap - biblioteker, instant client osv.
sudo mkdir /usr/oracle_instantClient64
Download og udpak alle 64 bit instant-klientpakker fra oracle til ovenstående mappe
Opret et symbollink i den mappe til en af filerne derinde
sudo cd /usr/oracle_instantClient64
sudo ln -s /usr/oracle_instantClient64/libclntsh.dylib.10.1 libclntsh.dylib
Følgende dir er hardkodet ind i oracle instant-klienten - gud ved hvorfor - så det er nødvendigt at oprette og symlinke det
sudo mkdir -p /b/227/rdbms/
sudo cd /b/227/rdbms/
sudo ln -s /usr/oracle_instantClient64/ lib
Skal tilføje et par miljøvariabler, så rediger /etc/profile og tilføj dem, så de eksisterer for alle brugere:
export ORACLE_HOME=/usr/oracle_instantClient64
export DYLD_LIBRARY_PATH=/usr/oracle_instantClient64
Prøv nu at installere DBD::Oracle gennem CPAN - dette vil mislykkes, men det betyder, at alle afhængigheder vil blive downloadet, og det henter modulet for os
sudo perl -MCPAN -e shell
install DBD::Oracle
Når dette mislykkes, skal du afslutte CPAN og gå til din .cpan/build-dir - hvis du brugte automatisk konfiguration af CPAN vil det være
cd ~/.cpan/build
hvis du ikke har konfigureret automatisk, kan du finde din build-mappe med følgende kommando i CPAN
o conf build_dir
Når du er i build-dir'en, skal du kigge efter DBD::Oracle-dir'et, som lige er blevet oprettet (det vil hedde noget i retning af DBD-Oracle-1.28-?), og cd ind i det.
Nu skal vi skifte til root-brugeren. Root er ikke aktiveret som standard i osx - for detaljer om aktivering se dette indlæg på apple-webstedet a>
Når vi er logget ind som root, skal vi indstille ovenstående miljøvariabler for root:
export ORACLE_HOME=/usr/oracle_instantClient64
export DYLD_LIBRARY_PATH=/usr/oracle_instantClient64
Nu, mens vi stadig er logget ind som root, skal vi køre makefilen for modulet, derefter lave og derefter installere
perl Makefile.pl
make
make install
Forudsat at alt fungerede uden fejl, log ud af root:vi er DBD'd op! Hvis dette ikke virkede, er det på tide at stoppe Google med de fejl, du ser
Nu skal du bare installere DBI-modulet
sudo perl -MCPAN -e shell
install DBI
Nu er du klar - nyd dit nye perly oracley liv
Yderligere oplysninger fra user852637:
-
Rettelse til dette trin
perl Makefile.pl make install
Det sidste trin skal være
make install
-
Under fremstillingen kan du støde på en fejl, der ser ud som:
For at rette dette skal du redigere filen "Makefile" oprettet efter "perl Makefile.pl"-trinnet og fjerne alle forekomster af følgende tekst:
-arch ppc
Dette vil fjerne fejlen.
-
Den samme fejl beskrevet i (2.) vil opstå under installationen af DBI-modulet. Du skal redigere
Makefile
oprettet efterperl Makefile.pl
trin og fjern alle forekomster af følgende tekst :-arch ppc