Adding the Serviceability group since SA belongs to them...

I believe that this issue is solved by this changeset:

Changeset: 64e35dfa4ff5
Author:    jwilhelm
Date:      2014-06-13 17:07 -0400
URL: http://hg.openjdk.java.net/jdk9/hs/hotspot/rev/64e35dfa4ff5

8046408: Build failure from multiple ptrace.h
Summary: prefer <sys/ptrace.h> over <linux/ptrace.h>
Reviewed-by: sla, mikael
Contributed-by: kim.barr...@oracle.com


That changeset was pushed to JDK9-hs yesterday which means it
should be in JDK9-dev next week (presuming all goes well with
the weekend PIT of today's snapshot).

Dan


On 6/20/14 5:59 AM, Peter Levart wrote:
Hi,

I get the following compile error when building on Fedora 20, 64 Bit:

Compiling /home/peter/work/hg/jdk9-dev/hotspot/src/share/vm/utilities/workgroup.cpp Compiling /home/peter/work/hg/jdk9-dev/hotspot/src/share/vm/utilities/xmlstream.cpp Compiling /home/peter/work/hg/jdk9-dev/hotspot/src/share/vm/utilities/yieldingWorkgroup.cpp
Making signal interposition lib...
Making SA debugger back-end...
In file included from /home/peter/work/hg/jdk9-dev/hotspot/agent/src/os/linux/libproc.h:37:0, from /home/peter/work/hg/jdk9-dev/hotspot/agent/src/os/linux/libproc_impl.h:30, from /home/peter/work/hg/jdk9-dev/hotspot/agent/src/os/linux/ps_proc.c:33: /usr/include/linux/ptrace.h:58:8: error: redefinition of 'struct ptrace_peeksiginfo_args'
 struct ptrace_peeksiginfo_args {
        ^
In file included from /home/peter/work/hg/jdk9-dev/hotspot/agent/src/os/linux/ps_proc.c:32:0:
/usr/include/sys/ptrace.h:191:8: note: originally defined here
 struct ptrace_peeksiginfo_args
        ^
gmake[6]: *** [libsaproc.so] Error 1
gmake[6]: *** Waiting for unfinished jobs....
gmake[5]: *** [the_vm] Error 2
gmake[4]: *** [product] Error 2
gmake[3]: *** [generic_build2] Error 2
gmake[2]: *** [product] Error 2
gmake[1]: *** [/home/peter/work/hg/jdk9-dev/build/linux-x86_64-normal-server-release/hotspot/_hotspot.timestamp] Error 2
make: *** [hotspot-only] Error 2


...it seems there are 2 definitions of "struct ptrace_peeksiginfo_args" in 2 different system include files:

/usr/include/linux/ptrace.h
/usr/include/sys/ptrace.h

...they are included by the following two hostpot files in jdk9-dev/hotspot/agent/src/os/linux:

libproc.h:#include <linux/ptrace.h>
ps_proc.c:#include <sys/ptrace.h>


Which one is the right one?

Regards, Peter


Reply via email to