J'essayais d'installer perf sur slackware 13.1
La première fois que j'ai lancé make sur /usr/src/linux/tools/perf j'ai eu quelques erreurs.
Et j'ai trouvé ce patch
http:/ /www.valimar.it/repo/linux/perf_fix-2.6.33.patch
Et quand j'ai exécuté à nouveau make, il a émis différentes erreurs comme ci-dessous.
Mais j'ai déjà installé perl package perl -5.10.1-i486-1
libperf.a(trace-event-perl.o): In function `define_flag_value':
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:125: undefined reference to `Perl_push_scope'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:126: undefined reference to `Perl_save_int'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:129: undefined reference to `Perl_newSVpv'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:129: undefined reference to `Perl_sv_2mortal'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:130: undefined reference to `Perl_newSVpv'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:130: undefined reference to `Perl_sv_2mortal'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:131: undefined reference to `Perl_newSVuv'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:131: undefined reference to `Perl_sv_2mortal'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:132: undefined reference to `Perl_newSVpv'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:132: undefined reference to `Perl_sv_2mortal'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:135: undefined reference to `Perl_get_cv'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:136: undefined reference to `Perl_call_pv'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:139: undefined reference to `Perl_free_tmps'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:132: undefined reference to `Perl_stack_grow'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:131: undefined reference to `Perl_stack_grow'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:130: undefined reference to `Perl_stack_grow'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:129: undefined reference to `Perl_stack_grow'
/usr/src/linux-2.6.33.4/tools/perf/util/trace-event-perl.c:127: undefined reference to `Perl_markstack_grow'
Réponse acceptée :
Enfin, j'ai résolu ce problème en commentant simplement la ligne suivante dans Makefile
#ifndef NO_LIBPERL
#PERL_EMBED_LDOPTS = `perl -MExtUtils::Embed -e ldopts 2>/dev/null`
#PERL_EMBED_CCOPTS = `perl -MExtUtils::Embed -e ccopts 2>/dev/null`
#endif
Cela ressemblait à MExtUtils::Embed générant de mauvais LDFLAGS pour libperl
J'ai également trouvé que le paquet slackware perl ne fournissait que la bibliothèque statique libperl.a