> 1) If I choose cygwin, the unix development tasks > go easier. But the Win32 stuff, in particular > Win32::API, etc. is not compiling
It won't compile in cygwin, but there is no reason why you can't use ActiveState's Perl with Win32::API under cygwin. Install it outside of cygwin, then call it from cygwin just like any other Win32 app. > In particular, paths are a nightmare - on cygwin's sh, > they use /cygdrive/c... to prefix things, on mingw, > they use /c/. Yet, if you try This runs under both cygwin and cmd with ActiveState. Cygwin understands "c:/". perl -e "opendir DIR, 'c:/';print readdir(DIR);closedir DIR" > Also perplexing is the lack of support for junctions > (reparse points) in -l and link. I'm not sure what you mean? -l has no use on cmd. > Anyone got decent solutions? One of the things I > was thinking of is a 'preprocessor' to perl that > takes its arguments (namely script names) and does > magical tinkering to change /cygdrive/c into C: > before passing it to perl as a filename. Use "c:/" in cygwin as noted above. I'm not sure what else you would want the preprocessor to do. If your concern is that for certain tasks you need to use Win32:: modules on windows, and other modules on *nix you can use $^O to determine which OS the script is being run on and use that to determine how to carry out an action. To increase portability you can use the built-in functions like opendir instead of `ls` or `dir`. You can also use other modules like Cwd which are cross platform. Hope that helps a little. Rob -----Original Message----- From: Edward Peschko [mailto:[EMAIL PROTECTED] Sent: Tuesday, October 21, 2003 5:32 PM To: [EMAIL PROTECTED]; [EMAIL PROTECTED] Subject: perl on win32 annoyances hey all, I've been trying to get a consistent perl on win32 experience going here, where by consistent I mean: 1) being able to develop unix applications on win32 2) being able to develop win32 applications on win32 both using perl. However, in doing so, I'm finding that the perl environments aren't as uniform as I would like them to be. 1) If I choose cygwin, the unix development tasks go easier. But the Win32 stuff, in particular Win32::API, etc. is not compiling - or at least I'm missing some trick in compiling it. 2) If I choose cc -Mno-cygwin, it doesn't compile at all. 3) If I choose mingw32, perl 5.8.1 doesn't compile at all - either. 4) If I choose ActiveState, the Win32 part goes smoother, but it has issues integrating with cygwin.. In particular, paths are a nightmare - on cygwin's sh, they use /cygdrive/c... to prefix things, on mingw, they use /c/. Yet, if you try /activestate/perl/bin/perl /cygdrive/c/filename.pl it doesn't work because perl has no idea of what '/cygdrive/c' means. Or '/c/' Also perplexing is the lack of support for junctions (reparse points) in -l and link. 5) if I use cmd.exe and activestate's perl, I get a suboptimal environment and making unix applications suffer. Anyone got decent solutions? One of the things I was thinking of is a 'preprocessor' to perl that takes its arguments (namely script names) and does magical tinkering to change /cygdrive/c into C: before passing it to perl as a filename. Or perhaps a mod to activestate perl itself that does this translation without user interference. Or, perhaps I'm doing something wrong in compiling perl with cygwin to get activestate's modules working -- anyone have experience with this? Interested to hear if anybody has experience with any of the above, and what workarounds people have to offer.. Ed _______________________________________________ Perl-Win32-Users mailing list [EMAIL PROTECTED] To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs _______________________________________________ Perl-Win32-Users mailing list [EMAIL PROTECTED] To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs