Installing TK into Oracle's perl installation

C

coloradocamper

The Oracle database install contains its own perl installation. In 9i
this is in $ORACLE_HOME/Apache/perl, and in 10g it is in
$ORACLE_HOME/perl. For a number of reasons (which I won't get into
here) I need to use this perl installation. My PATH and PERL5LIB is set
to use this perl.

Oracle has provided a number of changes to be made to Config.pm in
order to install additional modules. I have successfully installed TK
in the 9i installation (5.00503). However, I am getting errors with the
10g installation (5.8.3). I believe @INC includes paths that do not
exist on my server.

I am getting the following error when I begin perl Makefile.PL for TK:

perl Makefile.PL
Cannot find
'/ade/stvobadm_perl_583_build/perl/bin/Solaris/Opt/lib/5.8.3/sun4-solaris-thread-multi/CORE/perl.h'
have you installed perl?
Compilation failed in require at Makefile.PL line 17.
BEGIN failed--compilation aborted at Makefile.PL line 19.

I don't have an /ade directory. I am assuming this existed in Oracle's
environment when they compiled perl.

Is there a way to make this work?

Here is the output of perl -V:

Summary of my perl5 (revision 5.0 version 8 subversion 3)
configuration:
Platform:
osname=solaris, osvers=2.8, archname=sun4-solaris-thread-multi
uname='sunos dsunrde01 5.8 generic_117000-01 sun4u sparc
sunw,ultraax-i2 '
config_args='-Dprefix=/usr/local/oracle/product/102SE/perl
-Dcc=/usr/local/bin/gcc -Doptimize=-KPIC -O3 -Dusethreads -Duseithreads
-Uusemymalloc -des'
hint=recommended, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef useithreads=define
usemultiplicity=define
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='/opt/SUNWspro6.1/bin/cc', ccflags ='-D_REENTRANT
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-KPIC -O3',
cppflags='-D_REENTRANT -I/usr/local/include'
ccversion='Sun WorkShop 6 update 1 C 5.2 2000/09/11',
gccversion='', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='/usr/local/bin/gcc', ldflags =' -L/usr/lib -L/usr/ccs/lib
-L/opt/SUNWspro6.1/WS6U1/lib -L/usr/local/lib '
libpth=/usr/lib /usr/ccs/lib /opt/SUNWspro6.1/WS6U1/lib
/usr/local/lib
libs=-lsocket -lnsl -lgdbm -ldl -lm -lpthread -lc
perllibs=-lsocket -lnsl -ldl -lm -lpthread -lc
libc=/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' '
cccdlflags='-fPIC', lddlflags='-G -L/usr/lib -L/usr/ccs/lib
-L/opt/SUNWspro6.1/WS6U1/lib -L/usr/local/lib'


Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES
PERL_IMPLICIT_CONTEXT
Built under solaris
Compiled at Jun 30 2004 10:58:11
%ENV:

PERL5LIB="/usr/local/oracle/product/102SE/perl/lib/5.8.3:/usr/local/oracle/product/102SE/perl/lib/site_perl/5.8.3"
@INC:

/usr/local/oracle/product/102SE/perl/lib/5.8.3/sun4-solaris-thread-multi
/usr/local/oracle/product/102SE/perl/lib/5.8.3

/usr/local/oracle/product/102SE/perl/lib/site_perl/5.8.3/sun4-solaris-thread-multi
/usr/local/oracle/product/102SE/perl/lib/site_perl/5.8.3

/ade/stvobadm_perl_583_build/perl/bin/Solaris/Opt/lib/5.8.3/sun4-solaris-thread-multi
/ade/stvobadm_perl_583_build/perl/bin/Solaris/Opt/lib/5.8.3

/ade/stvobadm_perl_583_build/perl/bin/Solaris/Opt/lib/site_perl/5.8.3/sun4-solaris-thread-multi

/ade/stvobadm_perl_583_build/perl/bin/Solaris/Opt/lib/site_perl/5.8.3
/ade/stvobadm_perl_583_build/perl/bin/Solaris/Opt/lib/site_perl
 
L

Lee

...For a number of reasons (which I won't get into
here) I need to use this perl installation.

Go into them, it may help. Why can't you use a "normal" perl?
...I believe @INC includes paths that do not exist on my server.

Yes, as shown in your perl -V output. You can always edit @INC.
...I don't have an /ade directory. I am assuming this existed in Oracle's
environment when they compiled perl.

....and where the sources and headers are being sought. I suppose, since
Perl -V gives you the info,l you could re-create the original build
environment, put the sources where they're expected. Have you looked to
see if you can edit Makefile.PL to change the expections (perldoc
ExtUtils::MakeMaker)?

Sorry not much help, just saw the post was going unanswered.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,537
Members
45,020
Latest member
GenesisGai

Latest Threads

Top