1

Attempting to install DBD::Oracle in my Strawberry Perl (v5.16.3) on my Windows 2012 server. I'm using the command:

cpanm DBD::Oracle

Unfortunately, I believe it is failing because there is a space in the ORACLE_HOME path. Looking in the logs I see the following:

gcc -c  -IC:/Program Files/Oracle/ora92/oci/include -IC:/Program Files/Oracle/ora92/rdbms/demo -IT:\strawberry\perl\vendor\lib\auto\DBI     -s -O2 -DWIN32 -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-strict-aliasing -mms-bitfields -s -O2     -DVERSION=\"1.74\"    -DXS_VERSION=\"1.74\"  "-IT:\strawberry\perl\lib\CORE"  -Wall -Wno-comment -DUTF8_SUPPORT -DORA_OCI_VERSION=\"9.2.0.1\" Oracle.c
gcc: error: Files/Oracle/ora92/oci/include: No such file or directory
gcc: error: Files/Oracle/ora92/rdbms/demo: No such file or directory
dmake.exe:  Error code 129, while making 'Oracle.o'
-> FAIL Installing DBD::Oracle failed. See T:\strawberry\data\.cpanm\work\1485813890.9528\build.log for details. Retry with --force to force install it.

So, is there any way to get dmake (or whatever program is doing this) to put double quotes around the include paths?

Or, am I barking up the wrong tree here? Is there something else I should consider?

Unfortunately, for various reason, re-installing the Oracle client somewhere else is not an option.

Thanks in advance for you help.

FrankRalphBob
  • 434
  • 4
  • 14
  • 1
    Can you `set ORA_HOME=C:\Progra~1\Oracle\ora92\...`? – mob Jan 31 '17 at 21:00
  • It looks like a bug [here](https://metacpan.org/source/PYTHIAN/DBD-Oracle-1.74/Makefile.PL#L377) in Makefile.PL. You should [submit a bug report](https://github.com/pythian/DBD-Oracle/issues). – ThisSuitIsBlackNot Jan 31 '17 at 21:03
  • 1
    @mob Thanks mob - that got me through to the next error `In file included from Oracle.xs:1:0:Oracle.h:37:17: fatal error: oci.h: No such file or directory` For some reason, oci.h has not been included in the client install. I can't find it anywhere on the drive. I'll talk to the administrator about installing it. – FrankRalphBob Jan 31 '17 at 21:31
  • @ThisSuitIsBlackNot Yes, I will. I haven't dealt with Makefiles in over 2 decades, so I wasn't sure where the problem was. Thanks! – FrankRalphBob Jan 31 '17 at 21:32
  • @FrankRalphBob Makefile.PL is actually just a Perl script. It generates the actual Makefile. – ThisSuitIsBlackNot Jan 31 '17 at 22:06

0 Answers0