.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Devel::FindPerl 3pm" .TH Devel::FindPerl 3pm "2019-09-06" "perl v5.28.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Devel::FindPerl \- Find the path to your perl .SH "VERSION" .IX Header "VERSION" version 0.015 .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 2 \& use Devel::FindPerl \*(Aqfind_perl_interpreter\*(Aq; \& system find_perl_interpreter, \*(Aq\-e\*(Aq, \*(Aq...\*(Aq; .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This module tries to find the path to the currently running perl. It (optionally) exports the following functions: .SH "FUNCTIONS" .IX Header "FUNCTIONS" .SS "find_perl_interpreter($config = ExtUtils::Config\->new)" .IX Subsection "find_perl_interpreter($config = ExtUtils::Config->new)" 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 \f(CW$config\fR. 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. .ie n .SS "perl_is_same($path, @arguments)" .el .SS "perl_is_same($path, \f(CW@arguments\fP)" .IX Subsection "perl_is_same($path, @arguments)" Tests if the perl in \f(CW$path\fR is the same perl as the currently running one. .SH "SECURITY" .IX Header "SECURITY" 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. .SH "SEE ALSO" .IX Header "SEE ALSO" .IP "\(bu" 4 Probe::Perl .Sp 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 .RS 4 .IP "\(bu" 4 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. .IP "\(bu" 4 It handles tainting better. In particular, \f(CW\*(C`find_perl_interpreter\*(C'\fR never returns a tainted value, even in tainted mode. .IP "\(bu" 4 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. .RE .RS 4 .RE .SH "AUTHOR" .IX Header "AUTHOR" Leon Timmermans , Randy Sims .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" This software is copyright (c) 2012 by Randy Sims, Leon Timmermans. .PP This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.