PEPPLER.ORG
Michael Peppler
Sybase Consulting
Menu
Home
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
Freeware
Sybperl
Sybase::Simple
DBD::Sybase
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
FAQs
Sybase on Linux FAQ
Sybperl FAQ
Personal
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: Rick Perron <rick at ties dot org>
Subject: Re: Sybperl on Digital Unix
Date: Sep 5 1997 6:58PM

> >   Linker and Libraries:
> >     ld='ld', ldflags =' -L/usr/local/lib'
> >     libpth=/usr/local/lib /usr/shlib /shlib /lib /usr/lib /usr/ccs/lib
> >     libs=-ldbm -ldb -lm
> 		^^^^^^
> 		here's the culprit (or at least one of them!)
> 
> You have berkeley DB installed on your system, and perl (unfortunately,
> and incorrectly) links -ldb to the main perl executable, instead of
> linking it only to DB_File.so.
> 
> I say unforntunately, because both Berkeley DB and Sybase DB library
> have a function called dbopen().
> 
> Solution:
> 	1. Edit the Berkeley DB sources, change dbopen() to DBopen() 
> 	(for example), rebuild berkeley DB, rebuild perl, rebuild
> 	sybperl.
> 
> 	2. Edit perl's config.sh and remove all occurances of -ldb.
> 	Regenerate the Makefile's (run ./Configure -S)
> 	Rebuild perl, rebuild sybperl.
> 
> Michael
> -- 
> Michael Peppler       -||-  Data Migrations Inc.
> mpeppler@datamig.com  -||-  http://www.mbay.net/~mpeppler

That seemed to be it.  Unfortunately Berkeley DB is installed on 
Digital Unix 4.0B by default.  It would appear to be part of the BASE 
installation.  I assume this is new with 4.0B, because I didn't run into 
this under Digital Unix 4.0A. 

Also, now I can't seem to build it for dynamic loading without setting
LD_LIBRARY_PATH. :(  I assume this has something to do with the compiler
and linker being COMPLETELY replaced between 4.0A and 4.0B.

--
Rick Perron
rick@ties.org