It's good to see all the recent activity and cleanups to PDL.

It seems, though, that one or more of these changes have broken
PDL::Fit::Levmar (or perhaps the assumptions of PDL::Fit::Levmar were
somewhat brittle).

One could use PDL::Fit::LM, but PDL::Fit::Levmar is a bit more convenient
as it does not need partial derivatives to be formulated.

As a general summary:
It builds and passes tests with PDL 2.019.
It stopped building some time in the 2.019_x dev series (2.019_03?).
It builds again with 2.057 but fails one test (chkjac.t).
It now fails to build with 2.057_04.

Latest build failures are below.

Tested on Windows 10 using Strawberry Perl portable 5.32.1.

Possibly relevant is that PDL::Fit::Levmar seems to be up for adoption.
https://github.com/jlapeyre/PDL-Fit-Levmar/issues/5

Shawn.


======

cpanm --look PDL::Fit::Levmar
--> Working on PDL::Fit::Levmar
Fetching
http://www.cpan.org/authors/id/J/JL/JLAPEYRE/PDL-Fit-Levmar-0.0100.tar.gz
... OK
Entering
C:/user/perls/5321~2.1_P/data/.cpanm/work/1634122041.29780/PDL-Fit-Levmar-0.0100
with C:\Windows\system32\cmd.exe
Microsoft Windows [Version 10.0.19043.1237]
(c) Microsoft Corporation. All rights reserved.

C:\user\perls\5321~2.1_P\data\.cpanm\work\1634122041.29780\PDL-Fit-Levmar-0.0100>perl
-MPDL -E"say $PDL::VERSION"
2.057_04

C:\user\perls\5321~2.1_P\data\.cpanm\work\1634122041.29780\PDL-Fit-Levmar-0.0100>perl
Makefile.PL
Checking if your kit is complete...
Looks good
WARNING: Older versions of ExtUtils::MakeMaker may errantly install
README.pod as part of this distribution. It is recommended to avoid using
this path in CPAN modules.
Warning: '-L..' changed to
'-LC:/user/perls/5321~2.1_P/data/.cpanm/work/1634122041.29780/PDL-Fit-Levmar-0.0100/..'
Writing MYMETA.yml and MYMETA.json
Generating a gmake-style Makefile
Writing Makefile for PDL::Fit::Levmar
Writing MYMETA.yml and MYMETA.json

C:\user\perls\5321~2.1_P\data\.cpanm\work\1634122041.29780\PDL-Fit-Levmar-0.0100>gmake
"C:\user\perls\5.32.1.1_PDLxx\perl\bin\perl.exe"
"-IC:/user/perls/5.32.1.1_PDLxx/perl/site/lib"
"-MPDL::PP=PDL::Fit::Levmar,PDL::Fit::Levmar,Levmar,," levmar.pd
cp Levmar.pm blib\lib\PDL\Fit/Levmar.pm
gmake[1]: Entering directory
'C:/user/perls/5321~2.1_P/data/.cpanm/work/1634122041.29780/PDL-Fit-Levmar-0.0100/Func'
"C:\user\perls\5.32.1.1_PDLxx\perl\bin\perl.exe"
"-IC:/user/perls/5.32.1.1_PDLxx/perl/site/lib"
"-MPDL::PP=PDL::Fit::Levmar::Func,PDL::Fit::Levmar::Func,Func,," func.pd
cp Func.pm ..\blib\lib\PDL\Fit\Levmar/Func.pm
Running Mkbootstrap for Func ()
"C:\user\perls\5.32.1.1_PDLxx\perl\bin\perl.exe" -MExtUtils::Command -e
chmod -- 644 "Func.bs"
"C:\user\perls\5.32.1.1_PDLxx\perl\bin\perl.exe" -MExtUtils::Command::MM -e
cp_nonempty -- Func.bs ..\blib\arch\auto\PDL\Fit\Levmar\Func\Func.bs 644
"C:\user\perls\5.32.1.1_PDLxx\perl\bin\perl.exe"
"C:\user\perls\5.32.1.1_PDLxx\perl\lib\ExtUtils/xsubpp"  -typemap
C:\user\perls\5.32.1.1_PDLxx\perl\lib\ExtUtils\typemap -typemap
C:\user\perls\5.32.1.1_PDLxx\perl\site\lib\PDL\Core\typemap Func.xs >
Func.xsc
"C:\user\perls\5.32.1.1_PDLxx\perl\bin\perl.exe" -MExtUtils::Command -e mv
-- Func.xsc Func.c
gcc -c "-IC:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/Core"
 -I./levmar-2.5  "-IC:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/Core"
 -DWIN32 -DWIN64 -D__USE_MINGW_ANSI_STDIO -DPERL_TEXTMODE_SCRIPTS
-DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -fwrapv
-fno-strict-aliasing -mms-bitfields -O3 --unroll-loops
 -DVERSION=\"0.0100\" -DXS_VERSION=\"0.0100\"
 "-IC:\user\perls\5.32.1.1_PDLxx\perl\lib\CORE"   Func.c
Func.xs: In function
'XS_PDL__Fit__Levmar__Func_call_close_shared_object_file':
Func.xs:784:4: warning: implicit declaration of function
'_close_shared_object_file' [-Wimplicit-function-declaration]
    _close_shared_object_file ( &lib_handle, &rval , error_message, nchar);
    ^~~~~~~~~~~~~~~~~~~~~~~~~
gcc -c "-IC:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/Core"
 -I./levmar-2.5  "-IC:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/Core"
 -DWIN32 -DWIN64 -D__USE_MINGW_ANSI_STDIO -DPERL_TEXTMODE_SCRIPTS
-DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -fwrapv
-fno-strict-aliasing -mms-bitfields -O3 --unroll-loops
 -DVERSION=\"0.0100\" -DXS_VERSION=\"0.0100\"
 "-IC:\user\perls\5.32.1.1_PDLxx\perl\lib\CORE"   getsymbol.c
getsymbol.c: In function '_close_shared_object_file':
getsymbol.c:81:13: warning: comparison between pointer and integer
   if ( NULL == *rval ) {
             ^~
"C:\user\perls\5.32.1.1_PDLxx\perl\bin\perl.exe" -MExtUtils::Mksymlists \
     -e "Mksymlists('NAME'=>\"PDL::Fit::Levmar::Func\", 'DLBASE' => 'Func',
'DL_FUNCS' => {  }, 'FUNCLIST' => [], 'IMPORTS' => {  }, 'DL_VARS' => []);"
g++.exe Func.def -o ..\blib\arch\auto\PDL\Fit\Levmar\Func\Func.xs.dll -mdll
-s -L"C:\user\perls\5.32.1.1_PDLxx\perl\lib\CORE"
-L"C:\user\perls\5.32.1.1_PDLxx\c\lib" Func.o  getsymbol.o
"C:\user\perls\5.32.1.1_PDLxx\perl\lib\CORE\libperl532.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libm.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libmoldname.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libkernel32.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libuser32.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libgdi32.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libwinspool.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libcomdlg32.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libadvapi32.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libshell32.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libole32.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\liboleaut32.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libnetapi32.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libuuid.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libws2_32.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libmpr.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libwinmm.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libversion.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libodbc32.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libodbccp32.a"
"C:\user\perls\5.32.1.1_PDLxx\c\x86_64-w64-mingw32\lib\libcomctl32.a"
-Wl,--enable-auto-image-base
"C:\user\perls\5.32.1.1_PDLxx\perl\bin\perl.exe" -MExtUtils::Command -e
chmod -- 755 ..\blib\arch\auto\PDL\Fit\Levmar\Func\Func.xs.dll
gmake[1]: Leaving directory
'C:/user/perls/5321~2.1_P/data/.cpanm/work/1634122041.29780/PDL-Fit-Levmar-0.0100/Func'
Running Mkbootstrap for Levmar ()
"C:\user\perls\5.32.1.1_PDLxx\perl\bin\perl.exe" -MExtUtils::Command -e
chmod -- 644 "Levmar.bs"
"C:\user\perls\5.32.1.1_PDLxx\perl\bin\perl.exe" -MExtUtils::Command::MM -e
cp_nonempty -- Levmar.bs blib\arch\auto\PDL\Fit\Levmar\Levmar.bs 644
gcc -c  "-IC:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/Core"
 -I./levmar-2.5 -DWIN32 -DWIN64 -D__USE_MINGW_ANSI_STDIO
-DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS
-DUSE_PERLIO -fwrapv -fno-strict-aliasing -mms-bitfields -O3 --unroll-loops
   -DVERSION=\"0.0100\" -DXS_VERSION=\"0.0100\"
 "-IC:\user\perls\5.32.1.1_PDLxx\perl\lib\CORE"   -o pdlperlfunc.o
pdlperlfunc.c
pdlperlfunc.c: In function 'pdl_wrap':
pdlperlfunc.c:173:40: warning: passing argument 2 of
'PDL->add_deletedata_magic' from incompatible pointer type
[-Wincompatible-pointer-types]
        PDL->add_deletedata_magic(npdl, delete_magic, delparam);
                                        ^~~~~~~~~~~~
pdlperlfunc.c:173:40: note: expected 'void (*)(pdl *, size_t)' {aka 'void
(*)(struct pdl *, long long unsigned int)'} but argument is of type
'DelMagic' {aka 'void (*)(struct pdl *, int)'}
pdlperlfunc.c:176:40: warning: passing argument 2 of
'PDL->add_deletedata_magic' from incompatible pointer type
[-Wincompatible-pointer-types]
        PDL->add_deletedata_magic(npdl, default_magic, 0);
                                        ^~~~~~~~~~~~~
pdlperlfunc.c:176:40: note: expected 'void (*)(pdl *, size_t)' {aka 'void
(*)(struct pdl *, long long unsigned int)'} but argument is of type 'void
(*)(pdl *, int)' {aka 'void (*)(struct pdl *, int)'}
"C:\user\perls\5.32.1.1_PDLxx\perl\bin\perl.exe"
"C:\user\perls\5.32.1.1_PDLxx\perl\lib\ExtUtils/xsubpp"  -typemap
C:\user\perls\5.32.1.1_PDLxx\perl\lib\ExtUtils\typemap -typemap
C:\user\perls\5.32.1.1_PDLxx\perl\site\lib\PDL\Core\typemap Levmar.xs >
Levmar.xsc
"C:\user\perls\5.32.1.1_PDLxx\perl\bin\perl.exe" -MExtUtils::Command -e mv
-- Levmar.xsc Levmar.c
gcc -c  "-IC:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/Core"
 -I./levmar-2.5 -DWIN32 -DWIN64 -D__USE_MINGW_ANSI_STDIO
-DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS
-DUSE_PERLIO -fwrapv -fno-strict-aliasing -mms-bitfields -O3 --unroll-loops
   -DVERSION=\"0.0100\" -DXS_VERSION=\"0.0100\"
 "-IC:\user\perls\5.32.1.1_PDLxx\perl\lib\CORE"   Levmar.c
C:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/PP.pm:681:13: error: static
declaration of 'PDL_Fit_Levmar' follows non-static declaration
 #define PDL %s
             ^~
C:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/PP.pm:681:13: note: in
definition of macro 'PDL'
 #define PDL %s
             ^~
C:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/PP.pm:681:13: note: previous
declaration of 'PDL_Fit_Levmar' was here
 #define PDL %s
             ^~
C:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/PP.pm:681:13: note: in
definition of macro 'PDL'
 #define PDL %s
             ^~
In file included from
C:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/PP.pm:696:
pdlperlfunc.c: In function 'pdl_wrap':
pdlperlfunc.c:173:40: warning: passing argument 2 of
'PDL_Fit_Levmar->add_deletedata_magic' from incompatible pointer type
[-Wincompatible-pointer-types]
        PDL->add_deletedata_magic(npdl, delete_magic, delparam);
                                        ^~~~~~~~~~~~
pdlperlfunc.c:173:40: note: expected 'void (*)(pdl *, size_t)' {aka 'void
(*)(struct pdl *, long long unsigned int)'} but argument is of type
'DelMagic' {aka 'void (*)(struct pdl *, int)'}
pdlperlfunc.c:176:40: warning: passing argument 2 of
'PDL_Fit_Levmar->add_deletedata_magic' from incompatible pointer type
[-Wincompatible-pointer-types]
        PDL->add_deletedata_magic(npdl, default_magic, 0);
                                        ^~~~~~~~~~~~~
pdlperlfunc.c:176:40: note: expected 'void (*)(pdl *, size_t)' {aka 'void
(*)(struct pdl *, long long unsigned int)'} but argument is of type 'void
(*)(pdl *, int)' {aka 'void (*)(struct pdl *, int)'}
C:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/PP.pm: At top level:
C:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/PP.pm:681:13: error:
non-static declaration of 'PDL_Fit_Levmar' follows static declaration
 #define PDL %s
             ^~
C:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/PP.pm:681:13: note: in
definition of macro 'PDL'
 #define PDL %s
             ^~
C:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/PP.pm:681:13: note: previous
declaration of 'PDL_Fit_Levmar' was here
 #define PDL %s
             ^~
C:/user/perls/5.32.1.1_PDLxx/perl/site/lib/PDL/PP.pm:681:13: note: in
definition of macro 'PDL'
 #define PDL %s
             ^~
gmake: *** [Makefile:367: Levmar.o] Error 1
_______________________________________________
pdl-devel mailing list
pdl-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pdl-devel

Reply via email to