Devel::FindPerl - Find the path to your perl
use Devel::FindPerl 'find_perl_interpreter';
system find_perl_interpreter, '-e', '...';
This module tries to find the path to the currently running perl. It
(optionally) exports the following functions:
This function will try really really hard to find the path to the perl running
your program. I should be able to find it in most circumstances. Note that the
result of this function will be cached for any serialized value of
$config. It will return a list that usually but not
necessarily is containing one element; additional elements are arguments that
must be passed to that perl for correct functioning.
Tests if the perl in $path is the same perl as the
currently running one.
This module by default does things that are not particularly secure (run
programs based on external input). In tainted mode, it will try to avoid any
insecure action, but that may affect its ability to find the perl executable.
- •
- Probe::Perl
This module has much the same purpose as Probe::Perl, in fact
the algorithm is mostly the same as both are extracted from
Module::Build at different points in time. If I had known about it when
I extracted it myself, I probably wouldn't have bothered, but now that I
do have it there are a number of reasons for me to prefer
Devel::FindPerl over Probe::Perl
- Separation of concerns. P::P does 4 completely different things (finding
perl, managing configuration, categorizing platorms and formatting a perl
version. Devel::FindPerl is instead complemented by modules such as
ExtUtils::Config and Perl::OSType.
- It handles tainting better. In particular,
"find_perl_interpreter" never returns a
tainted value, even in tainted mode.
- It was written with inclusion in core in mind, though the removal of
Module::Build from core after perl 5.20 may make this point moot.
Leon Timmermans <leont@cpan.org>, Randy Sims
<randys@thepierianspring.org>
This software is copyright (c) 2012 by Randy Sims, Leon Timmermans.
This is free software; you can redistribute it and/or modify it
under the same terms as the Perl 5 programming language system itself.