Steffen Goeldner wrote:
Romulo Goncalves wrote:
Steffen Goeldner wrote:
In general, you install a perl module in the following way:
perl Makefile.PL make make test make install
To do this I have to use cygwin which takes too long and it cannot be used for windows 64 bits. Do you know the steps for native compiler (nmake)?
Nmake should do. For extension modules (i.e. C), it is recommended that you use the same compiler as for the perl build (indeed, other combinations are almost impossible). AFAIK, ActiveState builds with VC - thus VC/nmake is o.k. (Personally, I use the ancient Borland C++ 5.5 with dmake.)
BTW: You find 'your' make with
perl -MConfig -e "print $Config{make}" I am using visual studio 2003 with service pack 1.
To compile I did: nmake NEED_MX=1 HAVE_JAVA=1 HAVE_PYTHON=1 HAVE_PYTHON_SWIG=1 HAVE_PHP=1 HAVE_PERL=1 HAVE_PERL_DEVEL=1 HAVE_PERL_SWIG=1 HAVE_PEAR=1 NO_MONETDB4=1 HAVE_MONETDB5=1 And I got the following error: if exist libMonetODBC.dll.manifest mt -nologo -manifest libMonetODBC.dll.manifest -outputresource:libMonetODBC.dll;2 if not exist "samples" mkdir "samples" copy ".\..\..\..\src\odbc\samples\Makefile.msc" "samples\Makefile" 1 file(s) copied. cd "samples" && nmake /nologo "prefix=C:\cygwin\home\goncalve\MonetDB\MonetDB_SQL\clients\NT" all if not exist "python" mkdir "python" copy ".\..\..\..\src\odbc\python\Makefile.msc" "python\Makefile" 1 file(s) copied. cd "python" && nmake /nologo "prefix=C:\cygwin\home\goncalve\MonetDB\MonetDB_SQL\clients\NT" all if not exist "perl" mkdir "perl" copy ".\..\..\src\perl\Makefile.msc" "perl\Makefile" 1 file(s) copied. cd "perl" && nmake /nologo "prefix=C:\cygwin\home\goncalve\MonetDB\MonetDB_SQL\clients\NT" all NMAKE : warning U4004: too many rules for target 'HAVE_PERL_DEVEL-dir' NMAKE : warning U4004: too many rules for target 'HAVE_PERL_DEVEL-dir' NMAKE : warning U4004: too many rules for target 'HAVE_PERL_DEVEL-dir' if not exist "MonetDB-CLI-MapiPP" mkdir "MonetDB-CLI-MapiPP" NMAKE : warning U4004: too many rules for target 'HAVE_PERL_DEVEL-Makefile' NMAKE : warning U4004: too many rules for target 'HAVE_PERL_DEVEL-Makefile' NMAKE : warning U4004: too many rules for target 'HAVE_PERL_DEVEL-Makefile' copy ".\..\..\..\src\perl\MonetDB-CLI-MapiPP\Makefile.msc" "MonetDB-CLI-MapiPP\Makefile" 1 file(s) copied. NMAKE : warning U4004: too many rules for target 'HAVE_PERL_DEVEL-all' NMAKE : warning U4004: too many rules for target 'HAVE_PERL_DEVEL-all' NMAKE : warning U4004: too many rules for target 'HAVE_PERL_DEVEL-all' cd "MonetDB-CLI-MapiPP" && nmake /nologo "prefix=C:\cygwin\home\goncalve\MonetDB\MonetDB_SQL\clients\NT" all if not exist "Cimpl" mkdir "Cimpl" copy ".\..\..\..\src\perl\Cimpl\Makefile.msc" "Cimpl\Makefile" 1 file(s) copied. cd "Cimpl" && nmake /nologo "prefix=C:\cygwin\home\goncalve\MonetDB\MonetDB_SQL\clients\NT" all cl -GF -W3 -wd4273 -wd4102 -MD -nologo -Zi -Ox -I. -I.\..\..\.. "-IC:\Pthreads\include" -I.\..\..\..\..\src\perl\Cimp "-I..\..\mapilib" -I"C:\cygwin\home\goncalve\MonetDB\MonetDB_SQL\MonetDB\NT\include" -I"C:\cygwin\home\goncalve\MonetDB\Mone DB_SQL\MonetDB\NT\include\common" -I"C:\cygwin\home\goncalve\MonetDB\MonetDB_SQL\MonetDB\NT\include\gdk" -LD -FeMapiLib.dll /link ..\..\mapilib\libMapi.lib cl : Command line error D2003 : missing source filename NMAKE : fatal error U1077: 'cl' : return code '0x2' Stop. NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop. NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop. NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop. NMAKE : fatal error U1077: '"E:\Visual Studio .NET 2003\VC7\BIN\nmake.exe"' : return code '0x2' Stop. C:\cygwin\home\goncalve\MonetDB\MonetDB_SQL\clients\NT>cd C:\cygwin\home\goncalve\MonetDB\MonetDB_SQL\clients\NT C:\cygwin\home\goncalve\MonetDB\MonetDB_SQL\clients\NT> Did I forget something or it is an error from your part? Regards, Romulo
Regards, Steffen