|
|
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.
Indeed.
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
#endif
#include
#if defined(OLD_SCOPE)
#define scope OLD_SCOPE
#endif
although I don't garantee that this will work...
Michael
--
Michael Peppler -||- Data Migrations Inc.
mpeppler@mbay.net -||- http://www.mbay.net/~mpeppler
Int. Sybase User Group -||- http://www.isug.com
Sybase on Linux mailing list: ase-linux-list@isug.com
|