Ok, i gave it another shot, seems to work, ought to work on strawberry provided you have msys ... the commands
md C:\dev\judyjudy cd C:\dev\judyjudy wget -c http://cpan.metacpan.org/authors/id/J/JJ/JJORE/Alien-Judy-0.27 +.tar.gz wget -c http://cpan.metacpan.org/authors/id/J/JJ/JJORE/Judy-0.41.tar.g +z tar -zxvf Alien-Judy-0.27.tar.gz cd Alien-Judy-0.27-new\src\judy-1.0.5 C:\citrusperl\mingw\msys\bin\sh.EXE configure --enable-static --disabl +e-shared prefix=C:/dev/judyjudy/judyprefix C:\citrusperl\mingw\msys\bin\make.EXE install cd C:\dev\judyjudy tar -zxvf Judy-0.41.tar.gz patch -p0 -i Judy-0.41-new.patch cd Judy-0.41 perl Build.PL build.bat test

The Judy-0.41-new.patch

diff -ruN Judy-0.41/Build.PL Judy-0.41-new/Build.PL --- Judy-0.41/Build.PL 2012-09-23 21:38:01 -0700 +++ Judy-0.41-new/Build.PL 2015-01-11 15:59:00 -0800 @@ -40,7 +40,7 @@ 'Config' => 0, 'Sub::Exporter' => 0, - 'Alien::Judy' => '0.26', +#~ 'Alien::Judy' => '0.26', }, create_readme => 1, @@ -50,8 +50,8 @@ # ACTION_build so the PERL5LIB of the moment can affect the usage # of -I and -L flags to find Judy.h and libJudy.so # - include_dirs => [], - extra_linker_flags => '', + include_dirs => [ 'C:/dev/judyjudy/judyprefix/include/' ], + extra_linker_flags => ' -LC:\dev\judyjudy\judyprefix\lib C:\de +v\judyjudy\judyprefix\lib\libJudy.a ', ); $build->create_build_script(); diff -ruN Judy-0.41/inc/My/Builder.pm Judy-0.41-new/inc/My/Builder.pm --- Judy-0.41/inc/My/Builder.pm 2012-09-23 21:38:01 -0700 +++ Judy-0.41-new/inc/My/Builder.pm 2015-01-11 15:53:22 -0800 @@ -75,31 +75,31 @@ $self->{properties}{include_dirs} = \ @new_include_dirs; - my @old_extra_linker_flags = @{ $self->extra_linker_flags() || [] + }; - my @new_extra_linker_flags = unique( - ( - map { "-L$_" } - @all_dirs - ), - '-lJudy', - ); - if ( "@old_extra_linker_flags" ne "@new_extra_linker_flags" ) { - local $" = q{', '}; - print "$action: extra_linker_flags='@{new_extra_linker_flags} +'\n"; - } - if ( ! grep { /^-L/ } @new_extra_linker_flags ) { - @new_extra_linker_flags = unique( - ( - map { "-L$_" } - @all_dirs - ), - '-lJudy' - ); - local $" = q{', '}; - print "$action: I couldn't resolve -lJudy in any of the below + listed places.\n"; - print "$action: extra_linker_flags='@{new_extra_linker_flags} +'\n"; - } - $self->{properties}{extra_linker_flags} = \ @new_extra_linker_fla +gs; +#~ my @old_extra_linker_flags = @{ $self->extra_linker_flags() || + [] }; +#~ my @new_extra_linker_flags = unique( +#~ ( +#~ map { "-L$_" } +#~ @all_dirs +#~ ), +#~ '-lJudy', +#~ ); +#~ if ( "@old_extra_linker_flags" ne "@new_extra_linker_flags" ) +{ +#~ local $" = q{', '}; +#~ print "$action: extra_linker_flags='@{new_extra_linker_fla +gs}'\n"; +#~ } +#~ if ( ! grep { /^-L/ } @new_extra_linker_flags ) { +#~ @new_extra_linker_flags = unique( +#~ ( +#~ map { "-L$_" } +#~ @all_dirs +#~ ), +#~ '-lJudy' +#~ ); +#~ local $" = q{', '}; +#~ print "$action: I couldn't resolve -lJudy in any of the be +low listed places.\n"; +#~ print "$action: extra_linker_flags='@{new_extra_linker_fla +gs}'\n"; +#~ } +#~ $self->{properties}{extra_linker_flags} = \ @new_extra_linker_ +flags; $self->dispatch( 'config_data' ); diff -ruN Judy-0.41/lib/Judy.pm Judy-0.41-new/lib/Judy.pm --- Judy-0.41/lib/Judy.pm 2012-09-23 21:38:01 -0700 +++ Judy-0.41-new/lib/Judy.pm 2015-01-11 15:53:22 -0800 @@ -6,12 +6,12 @@ $VERSION = '0.41'; -require Alien::Judy; -my $av_version = Alien::Judy->VERSION; -if ( $av_version < 0.18 ) { - die "Alien::Judy version 0.18 required--this is only version $av_ +version"; -} -Alien::Judy::dl_load_libjudy(); +#~ require Alien::Judy; +#~ my $av_version = Alien::Judy->VERSION; +#~ if ( $av_version < 0.18 ) { +#~ die "Alien::Judy version 0.18 required--this is only version $ +av_version"; +#~ } +#~ Alien::Judy::dl_load_libjudy(); # Now load the Perl wrapper over libJudy local @ISA = 'DynaLoader';

All tests pass except for the odd Judy-0.41\t\41typemap.t which tries to compile Judy-0.41/t/MAGIC/lib/MAGIC.xs ... which would have to be patched similarly but I didn't bother


In reply to Re^3: Bidirectional lookup algorithm? (Judy) by Anonymous Monk
in thread Bidirectional lookup algorithm? (Updated: further info.) by BrowserUk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.