Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 09 Dec 2014 09:32:26 -0800
From:      "Chris H" <bsd-lists@bsdforge.com>
To:        ports@FreeBSD.org, perl@FreeBSD.org, Mathieu Arnold <mat@FreeBSD.org>
Subject:   Re: Re: Next Perl update, and plans beyo =?UTF-8?B?bmTigKY=?=
Message-ID:  <cef3a0126588c211151ad08d816cfcf9@ultimatedns.net>
In-Reply-To: <A0E4223CC757F263814DE4EB@ogg.in.absolight.net>
References:  <20141209163038.GA49302@prod2.absolight.net> <7c516f31c076f6e921cda93641ccb236@ultimatedns.net>, <A0E4223CC757F263814DE4EB@ogg.in.absolight.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 09 Dec 2014 18:02:23 +0100 Mathieu Arnold <mat@FreeBSD.org> wrote

> +--On 9 décembre 2014 08:53:13 -0800 Chris H <bsd-lists@bsdforge.com>
> wrote:
> |> $ readelf -d
> |> /usr/local/lib/perl5/site_perl/mach/5.18/auto/DateTime/DateTime.so|grep
> |> perl $
> |> 
> |> So what the patch[1] does, is force linking with libperl.so.x.yy.  After
> |> the patch, a compiled Perl module will look like this:
> |> 
> |> $ readelf -d
> |> /usr/local/lib/perl5/site_perl/mach/5.18/auto/DateTime/DateTime.so | grep
> |> perl  0x0000000000000001 (NEEDED)             Shared library:
> |> [libperl.so.5.18]  0x000000000000000f (RPATH)              Library rpath:
> |> [/usr/local/lib/perl5/5.18/mach/CORE]  0x000000000000001d (RUNPATH)
> |>  Library runpath: [/usr/local/lib/perl5/5.18/mach/CORE] $
> | Apologies if I seem a bit obtuse. But as I read this, it appears
> | that Perl modules go from being text based (DateTime.pm) to becoming
> | compiled?
> | I *must* be missing something obvious.
> 
> Huhu, yes, DateTime.so is already compiled:
> $ readelf -d
> /usr/local/lib/perl5/site_perl/mach/5.18/auto/DateTime/DateTime.so
> 
> Dynamic section at offset 0x3d70 contains 21 entries:
>   Tag        Type                         Name/Value
>  0x0000000000000001 (NEEDED)             Shared library: [libc.so.7]
>  0x000000000000000c (INIT)               0x958
>  0x000000000000000d (FINI)               0x3878
>  0x0000000000000004 (HASH)               0x158
>  0x000000006ffffef5 (GNU_HASH)           0x218
>  0x0000000000000005 (STRTAB)             0x518
>  0x0000000000000006 (SYMTAB)             0x260
>  0x000000000000000a (STRSZ)              446 (bytes)
>  0x000000000000000b (SYMENT)             24 (bytes)
>  0x0000000000000003 (PLTGOT)             0x203f28
>  0x0000000000000002 (PLTRELSZ)           384 (bytes)
>  0x0000000000000014 (PLTREL)             REAL
>  0x0000000000000017 (JMPREL)             0x7d8
>  0x0000000000000007 (REAL)               0x730
>  0x0000000000000008 (RELASZ)             168 (bytes)
>  0x0000000000000009 (RELAENT)            24 (bytes)
>  0x000000006ffffffe (VERNEED)            0x710
>  0x000000006fffffff (VERNEEDNUM)         1
>  0x000000006ffffff0 (VERSYM)             0x6d6
>  0x000000006ffffff9 (RELACOUNT)          2
>  0x0000000000000000 (NULL)               0x0
> 
> But it's not linked with libperl.so right now.
Ugh. Sorry. I *clearly* didn't think it through. I didn't
examine the paths close enough. Of *course* the libs are
there.
Again, sorry, and thank you very much for taking the time
to reply.

--Chris

> 
> -- 
> Mathieu Arnold





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?cef3a0126588c211151ad08d816cfcf9>