I actually tracked the problem down to this block of code: /* perl 5.004 compatibility */ #ifndef PL_sv_undef #define PL_sv_undef sv_undef #endif
If I add: #define PL_sv_undef() before the above block of code things compile (with warnings) and I produce the RRDs.dll. When put in the right place in perl directory structure it works. Now my question is why is this code here if you specify that RRDTool requires Perl 5.6? This code seems to be for backwards compatibility but I cannot build with it there. Please advice. Thanks, linda -----Original Message----- From: Torleiv Ringer [mailto:[EMAIL PROTECTED] Sent: Monday, November 12, 2001 3:58 PM To: Licari, Linda Subject: Re: [rrd-developers] Re: RRDTool Installation Question It's been a while since I have used nmake, but I am going to guess that you do not have the proper system include or library path. Below, the error mentions redefining malloc, which is a standard c/c++ function. This points to a more general include/lib problem than a rrdtool specific problem. Maybe your system libs are in a non-standrad location? Search for "*stdio*" on your system to see. Can you compile other program using nmake? If so, try to duplicate some or all of the includes and lib includes from the working Makefile to the rrdtool Makefile. If you havr Visual Studio, you may want to try to create a new project and track down all necessary includes. It may be easier from the GUI of Visual Studio. Again, I am a UNIX programmer, so this may be wrong. But if this were a compile error on a UNIX box, what I have described would be the problem. Good luck. I have had big problems with any kind of perl on Win machines. torleiv On Mon, 2001-11-12 at 15:33, Licari, Linda wrote: > > I downloaded the src and did a build but I can't seem to build the RRDs.dll > for the life of me. I seem to get the rrdtool.exe and supporting libs build. > > > I get the following: > > C:\rrdtool-1.0.33\perl-shared>nmake test > > Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 > Copyright (C) Microsoft Corp 1988-1998. All rights reserved. > > cl -c -I../src/ -I../gd1.3 -nologo -O1 -MD -DNDEBUG -DWIN32 > -D_CONSOLE - > DNO_STRICT -DPERL_MSVCRT_READFIX -O2 -DVERSION=\"1.000331\" > -DXS_VERSION=\"1 > .000331\" -IC:\perl\lib\CORE RRDs.c > Command line warning D4025 : overriding '/O1' with '/O2' > RRDs.c > RRDs.xs(43) : warning C4005: 'free' : macro redefinition > C:\perl\lib\CORE\win32iop.h(272) : see previous definition of 'free' > RRDs.xs(44) : warning C4005: 'malloc' : macro redefinition > C:\perl\lib\CORE\win32iop.h(269) : see previous definition of > 'malloc' > RRDs.xs(45) : warning C4005: 'realloc' : macro redefinition > C:\perl\lib\CORE\win32iop.h(271) : see previous definition of > 'realloc' > RRDs.xs(63) : error C2065: 'sv_undef' : undeclared identifier > RRDs.xs(63) : warning C4133: '=' : incompatible types - from 'int *' to > 'struct > sv *' > RRDs.xs(76) : warning C4133: '=' : incompatible types - from 'int *' to > 'struct > sv *' > RRDs.xs(88) : warning C4133: '=' : incompatible types - from 'int *' to > 'struct > sv *' > RRDs.xs(101) : warning C4133: '=' : incompatible types - from 'int *' to > 'struct > sv *' > RRDs.xs(114) : warning C4133: '=' : incompatible types - from 'int *' to > 'struct > sv *' > RRDs.xs(151) : warning C4133: '=' : incompatible types - from 'int *' to > 'struct > sv *' > RRDs.xs(194) : warning C4133: '=' : incompatible types - from 'int *' to > 'struct > sv *' > RRDs.xs(208) : warning C4133: ':' : incompatible types - from 'struct sv *' > to ' > int *' > RRDs.xs(208) : warning C4133: 'function' : incompatible types - from 'int *' > to > 'struct sv *' > RRDs.xs(248) : warning C4133: '=' : incompatible types - from 'int *' to > 'struct > sv *' > RRDs.xs(258) : warning C4133: 'function' : incompatible types - from 'int *' > to > 'struct sv *' > NMAKE : fatal error U1077: 'cl' : return code '0x2' > Stop. > > Any help greatly appreciated. > > linda > > -----Original Message----- > From: Jake Brutlag [mailto:[EMAIL PROTECTED] > Sent: Monday, November 12, 2001 12:19 PM > To: Licari, Linda > Subject: RE: [rrd-developers] RRDTool Installation Question > > > > > I appreciate your patience with me. But I seem to run into > > all sorts of problems trying to compile this code. I think > > things are missing from the release. Do I have to get the > > source from somewhere. Here are the errors I get. It looks > > like I do not have the src. > > Yes, it seems you don't have the complete source code. Perhaps the x86 > distribution only includes precompiled binaries that can't be used in > your case (because RRDs is precompiled for ActiveState perl). Try > downloading and extracting the rrdtool-1.0.33.tar.gz distribution. If > the *.dsw and *.dsp files are missing, you can copy them over from your > current distribution. > > Jake > > -- > Unsubscribe mailto:[EMAIL PROTECTED] > Help mailto:[EMAIL PROTECTED] > Archive http://www.ee.ethz.ch/~slist/rrd-developers > WebAdmin http://www.ee.ethz.ch/~slist/lsg2.cgi -- Unsubscribe mailto:[EMAIL PROTECTED] Help mailto:[EMAIL PROTECTED] Archive http://www.ee.ethz.ch/~slist/rrd-developers WebAdmin http://www.ee.ethz.ch/~slist/lsg2.cgi
