FAQ
I just installed blead and got this:

$ bleadperl -V
Can't locate strict.pm in @INC (@INC contains: /sw/lib/perl5 /sw/lib/perl5/darwin /usr/local/perl/blead/lib/darwin-thread-multi-2level /usr/local/perl/blead/lib /usr/local/lib/site_perl/5.10/darwin-thread-multi-2level /usr/local/lib/site_perl /usr/local/lib/site_perl .) at /usr/local/perl/blead/lib/darwin-thread-multi-2level/Config.pm line 5.
BEGIN failed--compilation aborted at /usr/local/perl/blead/lib/darwin-thread-multi-2level/Config.pm line 5.
Compilation failed in require.
BEGIN failed--compilation aborted.

The problem is that none of strict.pm nor any of the arch independent core libraries got installed. I traced it back to this questionable bit of logic in installperl.

$do_installprivlib = 0 if $versiononly && !($installprivlib =~ m/\Q$ver/);

If we're configured as versiononly and the private lib path doesn't contain the version number don't install the private libs. I guess this is maybe some sort of protection against... something installing into somewhere it maybe shouldn't... not sure. Anyhow, it leaves me with a broken Perl.

This logic has been in there for a long time. I've traced it back to revision 18 during a 5.003 -> 5.004 integration. Anyone remember its purpose?


I have bleadperl configured like this:

sh Configure \
-Dprefix=/usr/local/perl/blead \
-Dusedevel \
-Duseithreads \
-Dccflags=-I/sw/include -Dldflags=-L/sw/lib \
-Dperladmin='schwern@pobox.com' \
-Dcf_email='schwern@pobox.com' \
-Dmyhostname='windhund' -Dmydomain='.schwern.org' \
-Dprivlib=/usr/local/perl/blead/lib \
-Dsitelib='/usr/local/lib/site_perl' \
-Dsitearch='/usr/local/lib/site_perl/5.10/darwin-thread-multi-2level' \
-Dlibpth='/usr/local/lib /sw/lib /opt/local/lib /usr/lib' \
-Dnetdb_host_type='const char *' \
-Dnetdb_hlen_type='socklen_t' \
-Uinstallusrbinperl $@

The important thing to note is that privlib is set to /usr/local/perl/blead/lib. I don't include the version # because there's no point. Its already isolated.


For now I'm going to work around it by turning off useversiononly.

Search Discussions

  • Rafael Garcia-Suarez at Nov 12, 2006 at 1:25 pm

    On 11/11/06, Michael G Schwern wrote:
    I just installed blead and got this:

    $ bleadperl -V
    Can't locate strict.pm in @INC (@INC contains: /sw/lib/perl5 /sw/lib/perl5/darwin /usr/local/perl/blead/lib/darwin-thread-multi-2level /usr/local/perl/blead/lib /usr/local/lib/site_perl/5.10/darwin-thread-multi-2level /usr/local/lib/site_perl /usr/local/lib/site_perl .) at /usr/local/perl/blead/lib/darwin-thread-multi-2level/Config.pm line 5.
    BEGIN failed--compilation aborted at /usr/local/perl/blead/lib/darwin-thread-multi-2level/Config.pm line 5.
    Compilation failed in require.
    BEGIN failed--compilation aborted.

    The problem is that none of strict.pm nor any of the arch independent core libraries got installed. I traced it back to this questionable bit of logic in installperl.

    $do_installprivlib = 0 if $versiononly && !($installprivlib =~ m/\Q$ver/);

    If we're configured as versiononly and the private lib path doesn't contain the version number don't install the private libs. I guess this is maybe some sort of protection against... something installing into somewhere it maybe shouldn't... not sure. Anyhow, it leaves me with a broken Perl.
    That can be understood. versiononly is used to tell installperl to
    install only components with version in their names or paths (like,
    /usr/local/bin/perl5.9.5, and not /usr/local/bin/perl). Also,
    versiononly is automatically turned off when not using usedevel...

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupperl5-porters @
categoriesperl
postedNov 11, '06 at 10:45p
activeNov 12, '06 at 1:25p
posts2
users2
websiteperl.org

People

Translate

site design / logo © 2022 Grokbase