On Thu, 11 Mar 2010, Tim Bunce wrote:
> You said you're using "Windows XP with ActiveState Perl 5.8.4"
> Could you post your perl -V output so we get the full details?
>
> Jan, could you do the same so we can compare?
I've attached it at the bottom, but AFAIK there was only a single ActivePerl
release for 5.8.4 (build 810), so the output should be identical.
> I want to find an appropriate #ifdef incantation to wrap it with.
As everything worked for me, it seems unlikely that there is any #define
that would explain the difference.
Things that are still different in Heiko's setup are the compiler version
(Visual Studio 2003 I think) and OS (Windows XP). I've been using VC6 and
MingW for
the compilers and Win2000 for the test VM (but probably not MinGW with 5.8.4
because build 810 doesn't support this without some tweaks).
> Any suggestions?
If anything I would suspect that the compiler version might make a difference
(and or the Platform SDK, if installed). But I'm not keen on spending too
much time on testing a 7 year old compiler with a 6 year old version of
ActivePerl unless the problem can also be reproduced with a current version
of Perl.
Ok, I have one more idea: When you compile a module with VS2003, then that
module
links against MSVCR71.dll instead of MSVCRT.dll, so you end up with 2 CRT
libraries
inside a single process. This normally works fine as long as you don't mix
things
like memory allocation (call MSVCR71.free() on a pointer returned by
MSVCRT.malloc())
and file I/O (call MSVCR71.fputs() on a FILE* returned by MSVCRT.fopen()) etc.
All the macro redefinitions in the Perl headers are supposed to protect you from
these mixups, but there may be a bug somewhere.
I don't have a VM with VS2003, and I don't know if I have a license anywhere
anymore
anyways, so it is not easy for me to test.
Cheers,
-Jan
Summary of my perl5 (revision 5 version 8 subversion 4) configuration:
Platform:
osname=MSWin32, osvers=4.0, archname=MSWin32-x86-multi-thread
uname=''
config_args='undef'
hint=recommended, useposix=true, d_sigaction=undef
usethreads=undef use5005threads=undef useithreads=define
usemultiplicity=define
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='cl', ccflags ='-nologo -Gf -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE
-DNO_STRICT -DHAVE_DES_FCRYPT -NO_HASH_SEED
-DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_READFIX',
optimize='-MD -Zi -DNDEBUG -O1',
cppflags='-DWIN32'
ccversion='', gccversion='', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=10
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='__int64',
lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='link', ldflags ='-nologo -nodefaultlib -debug -opt:ref,icf -libpath:"C:
\Perl810\lib\CORE" -machine:x86'
libpth=C:\PROGRA~1\MICROS~3\VC98\lib
libs= oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib
comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib
netapi32.lib uuid.lib wsock32.lib mpr.lib winmm.lib version.lib odbc32.lib
odbccp32.lib msvcrt.lib
perllibs= oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib
comdlg32.lib advapi32.lib shell32.lib ole32.lib
oleaut32.lib netapi32.lib uuid.lib wsock32.lib mpr.lib winmm.lib version.lib
odbc32.lib odbccp32.lib msvcrt.lib
libc=msvcrt.lib, so=dll, useshrplib=yes, libperl=perl58.lib
gnulibc_version='undef'
Dynamic Linking:
dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
cccdlflags=' ', lddlflags='-dll -nologo -nodefaultlib -debug -opt:ref,icf
-libpath:"C:\Perl810\lib\CORE" -machine:x86'
Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES PERL_IMPLICIT_
CONTEXT PERL_IMPLICIT_SYS
Locally applied patches:
ActivePerl Build 810
22751 Update to Test.pm 1.25
21540 Fix backward-compatibility issues in if.pm
Built under MSWin32
Compiled at Jun 1 2004 11:52:21
@INC:
c:/Perl810/lib
c:/Perl810/site/lib
.
--
You've received this message because you are subscribed to
the Devel::NYTProf Development User group.
Group hosted at: http://groups.google.com/group/develnytprof-dev
Project hosted at: http://perl-devel-nytprof.googlecode.com
CPAN distribution: http://search.cpan.org/dist/Devel-NYTProf
To post, email: [email protected]
To unsubscribe, email: [email protected]