On Dec 17, 2007 4:24 AM, Ton Voon <[EMAIL PROTECTED]> wrote: > However, it looks like test failures are due to not being able to > locate the newly compiled modules, or its dependencies. > > Looking at one of the successful test suites, it looks like PERL5LIB > has been set. Is this a variable that is manually set based on test > server? What can I do as a module author to ensure that test suites > with an external script can exec correctly?
I just looked quickly at check_stuff.t and saw this: $s = 'perl -Ilib '.$s; You're making the assumption that the perl that you want is called "perl" and is the first one in PATH. For many smoke testers, this is not the case -- as they run multiple versions of perl on the same hardware. This may be the cause of your dependency problems. You should always use the same perl executable that is running the test file. You can use $^X, but I believe that there are some situations where that may not be entirely portable. (See 'perldoc perlvar' for some details.) Instead, I always use the Probe::Perl module, which hides all the complexity: use Probe::Perl; my $perl = Probe::perl->find_perl_interpreter(); Then you can use $perl to run other programs. (Of course, you need to then include that as a dependency as well.) I suspect that will solve most if not all of the test report problems you have seen. Regards, David
