How to install XML::Twig for Windows XP - activeperl

I tried installing XML::Twig using ppm and also tried manually by adding twig.pm files in the perl/lib folder, also tried using Nmake but got an error
"NMAKE : fatal error U1073: don't know how to make 'C:\Documents' Stop."
How do I install it?

The best solution I've found, is to start off with Strawberry Perl, which includes pre-build XML::Twig and XML::LibXML
I know that isn't quite what you asked - but I found it a perpetual nuisance to get the XML library dependencies installed, so this is the approach I adopted.

Related

Installing imagemagick perlmagick on Windows Strawberry Perl

Has anyone had any success recently installing imagemagick/perlmagick on Windows with recent versions of strawberry perl? I have read and tried many of the things suggested that I found online however none is very recent and none has worked for me. I've added all the imagemagick folders to the path as well. Seems there is a problem with finding the right files with imagemagick install. I have tried adding directories to the make file but still always errors out with
Magick.xs:60:10: fatal error: magick/MagickCore.h: No such file or directory
#include <magick/MagickCore.h>
^~~~~~~~~~~~~~~~~~~~~
Versions: perl 5.30.2x64-multi-thread, ImageMagick-7.0.10-31-Q8-x64-dll, Windows server 2019. Any help or direction here is appreciated.
You appear to have installed ImageMagic v7, which is not backwards compatible with v6. The Image::Magick on CPAN requires ImageMagick v6.
(That said, I got test failures when trying to install Image::Magick with the latest binary of v6. I'm not the only one.)

installing wxPerl on strawberry

I am trying to install wxperl on strawberry. I can't install Alien::wxWidgets. I tried everything I can think of. Usually I get an error like this one:
Creating library file: ..\..\src\stc\..\..\..\lib\gcc_dll\libwxmsw28u_stc.a
compilet.exp:fake:(.edata+0x3c): undefined reference to `boot_compilet'
compilet.exp:fake:(.edata+0x40): undefined reference to `boot_compilet'
I don't know what that means. I tried with wxWidgets v 2.8.12 and 2.9.3 and various options. I started with cpanm and later evoking perl Build.PL manually with all kinds of options.
I am on Windows 7 64 bit. I tried with 5.14.2 32bit and 64bit. I am pretty sure that my path has no other perl installation than the one I currently using.
Any ideas? Thanks!
Using strawberry-perl-5.16.3.1-32bit on Windows 7.
It seems that even though the build process crashes with the error message above, Alien::wxWidgets has, in fact, been successfully made, and is ready to install.
Got the same error message building Alien::wxWidgets from SVN trunk. I ran 'build test' and the tests passed so I ran 'build install'. Wx compiled successfully, all tests passed. Padre editor compiled successfully, all tests passed, and it works well.
It is also possible to install via PPM in Strawberry perl:
ppm set repository wxPerl http://www.wxperl.co.uk/repo29 (for WxWidgets-2.9.4)
ppm install Alien::wxWidgets (version 0.61)
Unfortunately, the latest version of Padre editor requires Alien::wxWidgets 0.62, so building Alien::wxWidgets from source is necessary to make Padre from CPAN.
Alternately, you can use the Citrus Perl distribution created by Mark Dootson. One caveat, the version of Perl, 5.16.1, is not the latest, but it is more recent than DWIM Perl build of Strawberry Perl 5.14.2.1 RC.
I would recommend using the latest Strawberry Perl 5.16.3, or 5.14.4.1 for security reasons because it has a a fix for the rehashing flaw which could be used for denial of service attacks. Described here:
http://www.vuxml.org/freebsd/CVE-2013-1667.html
One idea is to install DWIM Perl, which is a Perl distribution which contains Strawberry preloaded with a whole lot of commonly used CPAN modules, and includes Alien::wxWidgets.

Trying to install Moose-2.000 via PPM/Activestate 5.12 on Win32 - 404 not found

This is a peculiar error that hasn't come up before. I'm using PPM in Windows to install modules for Perl. Works fine with tons of modules. But it seems like something is screwy with the Moose-2.000 package and I have no idea how to fix this.
To duplicate the error:
Install newest version of Activestate on windows machine
PPM into the cmd
search "moose"
mark Moose for install and install it
it says:
Moose marked for install
Installing package ...
Downloading Moose-2.0000 ... not found
Installing package failed
ERROR: 404 Not Found
I added virtually all the repos i could find but this seems to be coming from activestate's.
Forgive me, but I actually have no idea how to install a module manually (without the very simple GUI). I've downloaded the tar file, unzipped it and ran 'makefile.pl'. I copied the lib files to the /perl/site/lib folder.
Unfortunately, PPM expects a PPD wrapper (or something) so I can't do a command line install like "ppm install URL-of-package".
Can anyone attempt this and let me know if you have any luck? If not, please give a step by step on how to install this particular package. I'd be grateful since a bunch of other stuff (like a Twitter package) depends on it!
Thanks
UDPATE:
ok it looks like v2.000 simply doesn't exist yet for Win32. so i was able to install v1.25 in the following workaround, explained in the activestate bugtracker (see comments)
Workaround:
1) Find the latest available version for your platform here:
http://ppm4.activestate.com/idx/MOO...MY.html
Mouse over the icons in the PPMX column to see the target platform and Perl
version.
2) Copy the URL of the .ppmx file
3) Use the URL as an argument to 'ppm install'. For example, for 5.12 Win x86:
ppm install
http://ppm4.activestate.com/MSWin32-x86/5.12/1200/D/DR/DROLSKY/Moose-1.25.ppmx
I can see same problem - it looks like quirk on ActiveState side. On their package index there is still only 1.25 available. Maybe just the changes are yet to be propaged to mirrors.
Edit: I recently upgraded to Moose 2.0001, which seems to be fixed. However I got conflict with Class-MOP that comes with ActivePerl 5.12. It turned out that Class::MOP and Moose has been merged together. Solution was to remove both Class-MOP and Moose prior installation:
ppm rem Class::MOP --force
ppm rem Class::MOP --area perl --force
ppm rem Moose --area perl --force
ppm inst Moose

Caught in a neverending install cycle after upgrading Perl

Last night I was reading about a mysql tuning program here. I installed it and it said I needed a perl version higher than the one I had. I downloaded and installed perl 5.12.x
Suddenly my Munin utilities were tossing off errors like:
Can't locate RRDs.pm in #INC (#INC contains:
/usr/lib/perl5/site_perl/5.12.2/i686-linux /usr/lib/perl5/site_perl/5.12.2
/usr/lib/perl5/5.12.2/i686-linux /usr/lib/perl5/5.12.2
/usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl .) at
/usr/sbin/nginx-graph.pl line 2
Uninstalling and reinstalling the rrdtool rpms didn't move RRDs.pm from /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi/RRDs.pm
Thought I'd try installing rrdtool from source. It wanted pango.
Had to install newer FreeType and FontConfig.
Then the pango install wanted a new glib. Glib wouldn't make due to a gzlibcompressor error. Some Googling suggested that upgrading glib could cause a whole host of other issues.
I just want my !##$ munin graphs, but I feel like I've started sliding down a dangerous slope, especially as this is hosting my nginx webserver.
Any tips, ideas, warnings?
It appears you used to have Perl 5.8.something. Perl major releases are not binary compatible, so you have to reinstall/upgrade all modules using XS and any programs that embed the Perl interpreter when changing between 5.8.x, 5.10.x, and 5.12.x.
I would try to revert your system Perl to 5.8.x. This should get Munin working again. (I can't give detailed instructions for this, because I don't know what distribution you're using, how you installed Perl 5.12, or what else you've done trying to solve this.)
Then use perlbrew to install a newer version of Perl for your personal use without messing up things that depend on the system Perl.

How can I get BerkeleyDB for ActivePerl 5.10?

I'm trying to find out where a BerkeleyDB PPM is for ActivePerl 5.10. Anyone have a clue where to find this, or how to build it?
I had found a lead here. They claim BerkeleyDB 0.33 had built ok for Perl 5.10. They provide a link to the PPM, but not to the supporting zip file. So I got around it, manually getting the ppm and the zip and running ppm install on the ppm file. That didn't work because the dll provided in the zip can't be loaded.
It seems like the only thing to do is to get the BerkeleyDB code from Oracle, compile it for Win32 with visual studio (the provided MSI uses Cygwin tools), modify the tarball from CPAN and build the ppm myself.
The short answer: Use Sqlite.
The long answer, compile it and debug it yourself, contribute it to the community.
Start ppm, go to Edit -> Preferences -> repositories and add the "trouchelle" repository. They have a BerkelyDB package for ActiveState Perl 5.10.
Have you looked into getting Strawberry Perl? It may not be appropriate for your purposes, but a large part of the reason for its creation is the much better (although not perfect) support for CPAN modules, as opposed to requiring the PPM repositories to be kept up to date.
Doesn't DBD::DBM support BerkelyDB?