FYI The Oracle DBD driver is hard to build, it requires Oracle C Libraries and Header files. It also requires Oracle Development files described by Oracle as Examples, but which are really templates for building any C client. All Oracle C Clients are hard to build. If I recall sometimes a library has to be included on the compiler / linker command line three times because of circular references of one library to another which cannot be resolved on one pass. Ambiguity in wide characters "bytes per character" can make for buffer overflows which require a lot of time to hunt down and fix. Even if you are not using wide characters.
The CPAN version of the DBD driver (the last time I checked) is abandonware - someone keeps a patched fork on GIT. You can use cpanm (cpanminus) to build directly from git but not cpan. Docs in the cpanm man page. Lost mindshare from Perl to python and ruby have contributed to the problem remaining unresolved (all bugs are shallow given enough eyeballs - this doesn't work so well when the number of eyeballs drops greatly). I ended up downgrading both perl 5 and Oracle DBD to workaround a problem we had with a Perl/Oracle bug causing buffer overflows and seg-faults. I just couldn't afford the hours to fix it properly. Perl 5 internal structures had changed so much that older (working) versions of DBD no longer compiled against newer perl 5s. One workaround it to consider using the perl JDBC driver to access the Oracle JDBC library instead of trying to get the Oracle C Library to compile bug-free. You will need to bootstrap a jvm with the bridge in order to use it. Calling out from perl to a python "select to CSV" or "select to xml" or "select to JSON" might be another work-around - depending on your requirements - might be faster than booting up a JVM. Just my experience. The information contained in this electronic mail transmission is intended only for the use of the individual or entity named in this transmission. If you are not the intended recipient of this transmission, you are hereby notified that any disclosure, copying or distribution of the contents of this transmission is strictly prohibited and that you should delete the contents of this transmission from your system immediately. Any comments or statements contained in this transmission do not necessarily reflect the views or position of Radial or its subsidiaries and/or affiliates.