linux-snps-arc.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* perf jvmti: unconditionally links against -lelf
@ 2017-04-12  9:58 Alexey Brodkin
  2017-04-12 10:19 ` Jiri Olsa
  0 siblings, 1 reply; 3+ messages in thread
From: Alexey Brodkin @ 2017-04-12  9:58 UTC (permalink / raw)
  To: linux-snps-arc

Hi Jiri,

Just tried to cross-compile perf with pretty bare-minimal toolchain
which has no libelf installed for the target (for the record I used
SNPS ARC pre-built arc-2016.09 tools) like that:
--------------->8------------
make NO_LIBELF=1
--------------->8------------

And got the following build failure:
--------------->8------------
? LINK?????libperf-jvmti.so
.../2016.09-uclibc-archs/bin/../lib/gcc/arc-snps-linux-uclibc/6.2.1/../../../../arc-snps-linux-uclibc/bin/ld: cannot find -lelf
--------------->8------------

First I was surprised because I intentionally disabled usage of libelf
but after some grepping figured out jvmti is linked against libelf
regardless any settings, see:
--------------->8------------
$(OUTPUT)$(LIBJVMTI): $(LIBJVMTI_IN)
? ? ? ?$(QUIET_LINK)$(CC) -shared -Wl,-soname -Wl,$(LIBJVMTI) -o $@ $< -lelf -lrt
endif
--------------->8------------

This comes from commit?d4dfdf00d43e ("perf jvmti: Plug compilation into perf build").

I'm not really sure what could be the best solution to the problem I see.
If libelf is a real must for jvmti then probably we may force set?NO_JVMTI=1
if?NO_LIBELF=1 is passed on the command line.

At least the following builds perf for me without issues:
--------------->8------------
make NO_LIBELF=1 NO_JVMTI=1
--------------->8------------

Regards,
Alexey

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-04-12 11:52 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-04-12  9:58 perf jvmti: unconditionally links against -lelf Alexey Brodkin
2017-04-12 10:19 ` Jiri Olsa
2017-04-12 11:52   ` Alexey Brodkin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).