[Thinking out loud / talking to myself...] Steve Hay wrote:
>A straight out-of-the-box build of PAR-0.87 with perl-5.8.7 on Win32 >doesn't work. It worked fine with perl-5.8.6. > >Simply running "parl.exe" should output a short usage message. Under >perl-5.8.6 it does, but under perl-5.8.7 I get the error: > >Can't locate Config_heavy.pl in @INC (@INC contains: CODE(0x8c7b60) .) >at C:/perl5/lib/Config.pm line 66. > OK, after building a debug version I've found the source of parl.exe. It seems that the installed C:\perl5\bin\parl.exe (>1MB in size) is actually myldr\static.c, which extracts a bunch of files into a temporary directory, one of which is also called parl.exe (but only ~50kB in size), and then runs that small parl.exe. It is the small parl.exe, whose source code is myldr\main.c, that emits the error. However, if I cd to the temporary directory (which I notice the large parl.exe leaves behind, along with hundreds of others from previous runs :-s...) and then run the small parl.exe manually then it works fine, outputting a usage message as expected! The small parl.exe in the temporary directory even runs when I haven't cd'd into that directory. I noticed also that amongst the other files extracted into the temporary directory are a bunch of .pm files, one of which is Config.pm, and a single .pl file, which is Config_heavy.pl. The fact that Config_heavy.pl is the only .pl file got me wondering, so just as a test I tried renaming Config_heavy.pl to Config_heavy.pm in my Perl installation, and editing Config.pm to say just require Config_heavy; rather than requrie 'Config_heavy.pl'; After rebuilding PAR with this hacked Perl installation, I now find that everything works! parl.exe outputs a usage message, pp produces executables, the executables run... So why can't the small parl.exe find .pl files under some circumstances? Is there anything in the magic coderef @INC stuff that PAR uses that could be the cause? ------------------------------------------------ Radan Computational Ltd. The information contained in this message and any files transmitted with it are confidential and intended for the addressee(s) only. If you have received this message in error or there are any problems, please notify the sender immediately. The unauthorized use, disclosure, copying or alteration of this message is strictly forbidden. Note that any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Radan Computational Ltd. The recipient(s) of this message should check it and any attached files for viruses: Radan Computational will accept no liability for any damage caused by any virus transmitted by this email.
