Michael Peppler
Sybase Consulting
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
Sybase on Linux FAQ
Sybperl FAQ
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: Michael Peppler <mpeppler at MBAY dot NET>
Subject: Problems building Win32 version of sybperl on NT platform
Date: Jan 22 1999 10:44PM

>>>>> "Ian" == Mcfarlane, Ian  writes:

Ian> In an attempt to generate the DLL's for this version of Sybperl,
Ian> I discovered that that the compilation process defines a macro
Ian> called scope which is defined as "pPerl->perl" something.

Which version of sybperl do you have, exactly?

Ian> Unfortunately, the Sybase header files for NT OpenClient 1110
Ian> contain references to variables named scope. These references are
Ian> in structure definitions and the Sybperl compilation process
Ian> causes these variables to expand to "pPerl->perl" This then
Ian> causes the compilation to come to a screeching halt.

Ian> E.g. let's say that the Sybase header file cstypes.h contains a
Ian> declaration such as:

Ian> 	CS_VOID *scope;

Ian> Think about happens if this becomes:

Ian> 	CS_VOID *pPerl->perl;

Ian> If this isn't invalid C code then I don't know what is.


This is not an error that I have seen before. Are you using the
ActiveState build of perl? 
I suspect that you need to do something like this in the DBlib.xs and
CTlib.xs files:

#if defined(scope)
#define OLD_SCOPE scope
#undef scope


#if defined(OLD_SCOPE)
#define scope OLD_SCOPE

although I don't garantee that this will work...

Michael Peppler         -||-  Data Migrations Inc.       -||-
Int. Sybase User Group  -||-
Sybase on Linux mailing list: