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: Mihai Ibanescu <misa at dntis dot ro>
Subject: Re: sybperl and RedHat 5.1 (again)
Date: Aug 20 1998 2:24PM

On Thu, 20 Aug 1998, Michael Peppler wrote:

> Mihai Ibanescu writes:
>  > On Wed, 19 Aug 1998, Michael Peppler wrote:
>  > 
>  > > Mihai Ibanescu writes:
>  > >  > 		Hello
>  > >  > 
>  > >  > 	I bothered you with a similar message a while ago. It's about
>  > >  > sybperl (in fact ctlib) for glibc-based systems. I was able once to make
>  > >  > it work with RedHat 5.0. On fresh installs of RedHat 5.1, things are still
>  > >  > bad.
>  > >  > 	I've tried to compile the samples found in the ctlib tarball (the
>  > >  > one pointed by the link from your page). On my old systems everything is
>  > >  > OK. On glibc-based systems the linking phase complains about not finding
>  > >  > bsd_tcp:
>  > >  > 
>  > >  > /usr/local/sybase/lib/libsybtcl.a(sim_drvs.o)(.data+0x14): undefined
>  > >  > reference to `bsd_tcp'
>  > > 
>  > > That symbol lives in libinsck.so. So maybe you need to add that
>  > > library to your link line?
>  > 
>  > 	Ok, I did it. Stupid me. It compiles, but segfaults.. Have no idea
>  > why.
> 
> Me neither, unfortunately. Or rather I think I saw a message on the
> sybperl mailing list that libtermcap is the culprit, and that you need 
> to downgrade libtermcap to the version shipped with 5.0 to make things 
> work.

	Thank you very much, I've sent the message on sybperl-l... :-)
	Yes, that's true. In order to make sybperl work, you have to
downgrade libtermcap. But the CGI sybperl scripts still segfault. So do
the sample examples taken from the ctlib tarball. Strange.
	gdb shows a SIGSEGV in np_init(). This (internal?) function is
called somehow by ct_init(), but I have no idea what it does.
	Also, do you know why sybperl is looking for a file called
$SYBASE/install/sybnet.cfg? What is supposed to be in that file?

Here is a strace of the compute program from the samples directory:

getrlimit(RLIMIT_NOFILE, {rlim_cur=256, rlim_max=256}) = 0
getrlimit(RLIMIT_NOFILE, {rlim_cur=256, rlim_max=256}) = 0
brk(0x80be000)                          = 0x80be000
sigaction(SIGIO, {0x8095d70, ~[],
SA_STACK|SA_RESTART|SA_INTERRUPT|SA_ONESHOT|0x7fffad4}, {SIG_DFL}) = 0
sigaction(SIGURG, {SIG_DFL}, {SIG_DFL}) = 0
sigaction(SIGPIPE, {0x8095e60, ~[], SA_STACK|SA_NOCLDSTOP|0x9424a},
{SIG_DFL}) = 0
getrlimit(RLIMIT_NOFILE, {rlim_cur=256, rlim_max=256}) = 0
--- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++


	Really missing something. Any hint would be appreciated.
	It's damn strange, because if I run a sybperl CGI script from a
perl CGI script (with print ``), everything works OK. If I call directly
the sybperl CGI from the web page, it segfaults without the chance to
print what I write in BEGIN{} (or maybe without having the chance to print
it? Buffer problem? I'll try to fflush() the buffer somehow).
	And why the C programs don't work? How in the world sybperl works?
	Too many questions. But I want to see this solved, since I want to
upgrade my system, and this one would not allow me.

Best wishes,


						Mihai

	Mihai Ibanescu			Dynamic Network Technologies 
http://sysadm.dntis.ro/~misa	      Moara de Foc 35, et. 7, 6600 Iasi
	misa@dntis.ro			    tel. +40-32-252936