use Config;
if ($Config{'cc'} =~ /gcc/) {
print "built by gcc\n";
}
use Config qw(myconfig config_sh config_vars);
print myconfig();
print config_sh();
config_vars(qw(osname archname));
Configure program at Perl build time (over 900 values).
Shell variables from the config.sh file (written by Configure) are stored in the readonly-variable %Config, indexed by their names.
Values stored in config.sh as 'undef' are returned as undefined values. The perl exists function can be used to check if a named variable exists.
name='value';
Names which are unknown are output as name='UNKNOWN';. See also -V:name in Switches.
use Config;
use strict;
my %sig_num;
my @sig_name;
unless($Config{sig_name} && $Config{sig_num}) {
die "No sigs?";
} else {
my @names = split ' ', $Config{sig_name};
@sig_num{@names} = split ' ', $Config{sig_num};
foreach (@names) {
$sig_name[$sig_num{$_}] ||= $_;
}
}
print "signal #17 = $sig_name[17]\n";
if ($sig_num{ALRM}) {
print "SIGALRM is $sig_num{ALRM}\n";
}
The Config module is installed into the architecture and version specific library directory ($Config{installarchlib}) and it checks the perl version number when loaded.