develooper Front page | perl.perl5.porters | Postings from November 2016

[perl #130108] Perl 5.24.1 fails to compile with DTrace enabled onFreeBSD

Thread Previous
From:
Tony Cook via RT
Date:
November 21, 2016 01:04
Subject:
[perl #130108] Perl 5.24.1 fails to compile with DTrace enabled onFreeBSD
Message ID:
rt-4.0.24-30661-1479690242-459.130108-15-0@perl.org
On Wed, 16 Nov 2016 20:36:28 -0800, swills wrote:
> Hi,
> 
> Thanks, that fixes the build. But I only see 3 probes in perl:
> 
> 70179  perl99307   libperl.so.5.24                          perl_run
> op-entry
> 70180  perl99307   libperl.so.5.24                        perl_parse
> op-entry
> 70181  perl99307   libperl.so.5.24                     perl_destruct
> op-entry

This looks like you're doing a -Duseshrplib build.

I tried that and couldn't even build miniperl, getting an unhelpful error:

/usr/sbin/dtrace -G -s perldtrace.d -o dtrace_mini.o opmini.o perlmini.o  gv.o toke.o perly.o pad.o regcomp.o dump.o util.o mg.o reentr.o mro_core.o keywords.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o pp_sort.o caretx.o dquote.o time64.o  miniperlmain.o
dtrace: failed to link script perldtrace.d: an error was encountered while processing util.o

I tried a non -Duseshrplib and got no probes at all, the generated executable does include dtrace entry point symbols
but show no probes.

The miniperl generated from largely the same object files did have probes.

Unfortunately dtrace is opaque enough that there's really no way for us to fix this.

I'll do some checking on Solaris, but I suspect this will need
some support from FreeBSD people who know there way around userland dtrace.

Tony

---
via perlbug:  queue: perl5 status: open
https://rt.perl.org/Ticket/Display.html?id=130108

Thread Previous


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About