From: "Marvin Humphrey" <[email protected]>
> I don't understand why it didn't work. Before asking you to try trunk, I
> verified that it worked under ActivePerl in conjunction with MSVC 2010; MSVC
> 2010 is just as incapable of compiling that source file as Visual Studio 6
> without C++ mode enabled.
>
> I wonder what $self->config('cc') returns in your install[1]. Try inserting
> the
> following line in that file...
>
> # Compile as C++ under MSVC. Turn off stupid warnings, too.
> + warn "'" . $self->config('cc') . "'";
> if ( $self->config('cc') =~ /^cl\b/ ) {
> $extra_ccflags .= '/TP -D_CRT_SECURE_NO_WARNINGS ';
> }
>
> ... and then try the following.
>
> cd lucytrunk\clownfish
> perl Build.PL
>
> What do you get?
I have done that, and the result after perl Build.PL was:
'cl' at buildlib/Clownfish/Build.pm line 55.
compilet-NYxNk.c
Creating library compilet.lib and object compilet.exp
Created MYMETA.yml and MYMETA.json
Creating new 'Build' script for 'Clownfish' version '0.01'
And the result after perl Build:
Building Clownfish
Generating script 'src\CFCBase.ccs'
cl -nologo -c @"src\CFCBase.ccs" -Fo"src\CFCBase.obj" "src\CFCBase.c"
CFCBase.c
Generating script 'src\CFCBindAliases.ccs'
cl -nologo -c @"src\CFCBindAliases.ccs" -Fo"src\CFCBindAliases.obj"
"src\CFCBindAliases.c"
CFCBindAliases.c
src\CFCBindAliases.c(129) : error C2374: 'i' : redefinition; multiple
initialization
src\CFCBindAliases.c(120) : see declaration of 'i'
error building dll file from 'src/CFCBindAliases.c' at
E:/usr/site/lib/ExtUtils/CBuilder/Platform/Windows.pm line 130, <DATA> line 1.
> Or maybe the problem is the communication between trunk/perl/Build.PL and
> trunk/clownfish/Build.PL? Are you doing anything special to spec Visual
> Studio
> 6, which we're not passing successfully to the secondary Build.PL?
No, I am not doing anything special to VC6. I just run those commands and it
should have worked.
But I have succeeded to build Lucy from trunk with GCC that comes with
ActivePerl, I tested it and it works fine.
Octavian