1ExtUtils::InferConfig(3U)ser Contributed Perl DocumentatiEoxntUtils::InferConfig(3)
2
3
4
6 ExtUtils::InferConfig - Infer Perl Configuration for non-running
7 interpreters
8
10 use ExtUtils::InferConfig;
11 my $eic = ExtUtils::InferConfig->new(
12 perl => '/path/to/a/perl'
13 );
14
15 # Get that interpreters %Config as hash ref
16 my $Config = $eic->get_config;
17
18 # Get that interpreters @INC as array ref
19 my $INC = $eic->get_inc;
20
22 This module can determine the configuration and @INC of a perl
23 interpreter given its path and that it is runnable by the current user.
24
25 It runs the interpreter with a one-liner and grabs the %Config hash via
26 STDOUT capturing. Getting the module load paths, @INC, works the same
27 way for @INC entries that are plain paths.
28
30 new
31 Requires one named parameter: "perl", the path to the perl interpreter
32 to query for information.
33
34 Optional parameter: "debug => 1" enables the debugging mode.
35
36 get_config
37 Returns a copy of the %Config::Config hash of the intepreter which was
38 specified as a parameter to the constructor.
39
40 The first time this method (or the get_inc method below) is called, the
41 perl binary is run. For subsequent calls of this method, the
42 information is cached.
43
44 get_inc
45 Returns a copy of the @INC array of the intepreter which was specified
46 as a parameter to the constructor. Caveat: This skips any references
47 (subroutines, "ARRAY" refs, objects) in the @INC array because they
48 cannot be reliably stringified!
49
50 The first time this method (or the get_config method avove) is called,
51 the perl binary is run. For subsequent calls of this method, the
52 information is cached.
53
55 This module cannot get the non-plain (i.e. non-string) entries of the
56 @INC array!
57
59 You can use this module with ExtUtils::Installed to get information
60 about perl installations that aren't currently running.
61
63 Steffen Mueller, <smueller@cpan.org>
64
66 Copyright (C) 2007-2010 by Steffen Mueller
67
68 This library is free software; you can redistribute it and/or modify it
69 under the same terms as Perl itself, either Perl version 5.6 or, at
70 your option, any later version of Perl 5 you may have available.
71
72
73
74perl v5.32.0 2020-07-28 ExtUtils::InferConfig(3)