Tags: windows
Having problems to install CPAN modules that use Module::Install on Windows?
By Robin Smidsrød on May 30, 2010 | In Software, Perl | 3 feedbacks »
I have been discussing this problem with Adam Kennedy and some other people at #win32@irc.perl.org today:
Line 388 of Module/Install/Makefile.pm is a blank line, but the line after it is a simple two-arg open().
open MAKEFILE, "> $makefile_name" or
die "fix_up_makefile: Couldn't open $makefile_name: $!";
Side-note: I don't know why they use two-arg open there, but it is probably because Module::Install needs to work back to the stone-age of Perl.
Since the file was opened for read access a couple of lines above it got me thinking. This invalid argument message Windows gives you is its way of saying "hey, the file is locked somewhere else, you can't mess with it".
In the end I figured out that the bad guy here was my anti-virus (AVG). An extremely crude workaround I found that worked was to just put the entire Strawberry Perl in the anti-virus exclusion list. This solved the "invalid argument" message for me, and now my Module::Install-based CPAN modules install as they should.
This is obviously not a very good long-term solution. So this got me thinking a bit more. Who is really at fault here? Is it perl or AVG? Should AVG not allow open() to return before it is finished with its scanning stuff, or should perl handle open() for write differently on Windows, considering the OS itself forces write locking.
I'd really like to hear more about what you guys that know the perl internals have to say about this subject.
Update: Kenichi Ishigaki replied a bit later with a patch to Module::Install that works around the problem. He applied the web counter solution mentioned in perlfaq5 to the problem, and it worked for me. I guess it is now just to wait for Adam Kennedy to release a new version of Module::Install and file bugs against the CPAN modules that show problems on Windows with a message that they should upgrade their Module::Install version and issue a new release of their module.
Update2: Adam Kennedy has released Module::Install 0.98, which contains the patch. Please tell all CPAN module authors that use it to upgrade to the new version and Windows users will be very happy.
X11 forwarding to Ubuntu server not working with PuTTY and Xming?
By Robin Smidsrød on Jun 7, 2009 | In Software | Send feedback »
I was stumped why I couldn't run X11 software on my Ubuntu server installation and have it forwarded through my SSH connection to my desktop Windows machine running Xming.
The solution was to install the xauth package from the Ubuntu repositories:
$ sudo aptitude install xauth
Apparently installing an X11 application (gitk) didn't pull in that dependency.
Now I can finally run gitk and visualize those complicated git graphs. Yay!
