Clear questions and runnable code
get the best and fastest answer
Re^3: When cpan returns the dreaded "won't install without force"by marto (Chancellor)
|on Mar 29, 2013 at 10:15 UTC||Need Help??|
"As this is mine very first post here, please forgive any obvioius idiocies."
"Some modules simply do not *compile* well under Win, and I have had enough problems with Strawberry to stop using it."
Not all modules are supposed to compile under windows, if you have some examples of modules which don't compile 'well' I'd be happy to give them a try. I've been using Strawberry since it's Alpha/Beta releases and haven't experienced any serious issues.
"For a CPAN module probably the best place to look may not be the logs or scrollback, which I have often found confusing, but rather the META.YML files in the/Build directories, which normally state dependencies, as well as the home pages of the modules often with more info than CPAN."
Agreed, a great many (if not most) problems stem from the fact that people don't read the documentation for the module they're trying to install. I find that most moudules are good a listing their dependancies.
"For Win users I would also recommend installing CYGWIN, as it should have all the binaries that CPAN typically looks for, was well as the MingW compiler needed for some modules - even some of ActiveStates. (Else Visual C)
As Cygwin has its own, and usually outdated Perl, I would rename the binary, and possibly the directories within it. And add its path into the Win environment. It may even be possible to totally update the Cygwin Perl using CPAN. It would certainly be more methodically pure than using tethered software such as ActiveState. (I pray RMS will forgive my sins...)."
I think for new or less experienced users throwing cygwin into this mix will do more harm than good, in that it'll cause more confusion than it will resolve issues. From my experience Strawberry comes with everything I need to develop with Perl on Windows. ActiveState allows you to install MinGW etc via ppm MinGW, note that they don't provide a 64 bit build. I've recently read that the ActiveState repos are falling behind in provinding modules, especially for the 64bit platform. As I don't use it I've not looked deeper into the situation myself.
"Also, some dependencies are not on CPAN and the module authors automatically assume that they are already installed. Some are even proprietary - Mathematica and RT come to mind."
There are non cpan dependancies with certain modules, each instance of this in my experience is detailed in the module doumentation. For various reasons some third party stuff will never be on cpan, for example where the perl module is a wrapper around a third party or propriatry libary.
Thanks for your input.
Update: fixed typos