Kurt - I reran with log=debug and saw the same thing: cd /home/bceverly/work/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libinstrument && /usr/bin/objcopy --add-gnu-debuglink=libinstrument.debuginfo /home/bceverly/work/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libinstrument.so /usr/bin/objcopy: libinstrument.debuginfo: Invalid operation
Thanks, Bryan On Thu, May 14, 2015 at 4:59 PM, Kurt Miller <k...@intricatesoftware.com> wrote: > On Thu, 2015-05-14 at 23:04 +0300, Dmitry Samersoff wrote: > > Kurt, > > > > Debug symbols logic should work with GNU objcopy. > > > > could you try > > > > gmake LOG=debug > > > > and post make output? > > > > -Dmitry > > Hi Dmitry, > > The debug symbol logic works in several places prior to it failing. When > it does fail it fails with: > > /usr/bin/objcopy: libinstrument.debuginfo: Invalid operation > > I can manually reproduce the 'Invalid operation' error if I attempt to > do --add-gnu-debuglink on a binary that already has gnu-debuglink set. > > When I read the build logs I don't see two calls to set gnu-debuglink, > however it still fails with 'Invalid operation'. Very strange. Checking > with readelf -S I can see that libinstrument.so does have gnu-debuglink > set after the build fails. > > The complete log is here: > > http://www.intricatesoftware.com/OpenJDK/openbsd/build-jdk8.log > > The last chunk of the log follows inline below. > > Thanks, > -Kurt > > /bin/rm -f > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjaas/libjaas_unix.debuginfo > /usr/bin/objcopy --only-keep-debug > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libjaas_unix.so > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjaas/libjaas_unix.debuginfo > /bin/rm -f > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libdt_socket/libdt_socket.debuginfo > /bin/rm -f > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjsdt/libjsdt.debuginfo > /usr/bin/objcopy --only-keep-debug > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libjsdt.so > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjsdt/libjsdt.debuginfo > /usr/bin/objcopy --only-keep-debug > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libdt_socket.so > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libdt_socket/libdt_socket.debuginfo > cd > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjaas > && /usr/bin/objcopy --add-gnu-debuglink=libjaas_unix.debuginfo > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libjaas_unix.so > /bin/rm -f > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libzip/libzip.debuginfo > /usr/bin/objcopy --only-keep-debug > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libzip.so > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libzip/libzip.debuginfo > cd > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libdt_socket > && /usr/bin/objcopy --add-gnu-debuglink=libdt_socket.debuginfo > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libdt_socket.so > cd > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjsdt > && /usr/bin/objcopy --add-gnu-debuglink=libjsdt.debuginfo > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libjsdt.so > /bin/rm -f > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libattach/libattach.debuginfo > /usr/bin/objcopy --only-keep-debug > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libattach.so > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libattach/libattach.debuginfo > /usr/bin/touch > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjaas/libjaas_unix.debuginfo > /bin/rm -f > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libinstrument/libinstrument.debuginfo > /usr/bin/objcopy --only-keep-debug > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libinstrument.so > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libinstrument/libinstrument.debuginfo > cd > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libzip > && /usr/bin/objcopy --add-gnu-debuglink=libzip.debuginfo > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libzip.so > cd > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libattach > && /usr/bin/objcopy --add-gnu-debuglink=libattach.debuginfo > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libattach.so > /usr/bin/touch > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libdt_socket/libdt_socket.debuginfo > /usr/bin/touch > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjsdt/libjsdt.debuginfo > /bin/cp > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjaas/libjaas_unix.debuginfo > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libjaas_unix.debuginfo > /bin/cp > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libdt_socket/libdt_socket.debuginfo > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libdt_socket.debuginfo > /bin/cp > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjsdt/libjsdt.debuginfo > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libjsdt.debuginfo > cd > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libinstrument > && /usr/bin/objcopy --add-gnu-debuglink=libinstrument.debuginfo > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libinstrument.so > /bin/rm -f > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjsound/libjsound.debuginfo > /usr/bin/touch > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libzip/libzip.debuginfo > /usr/bin/objcopy --only-keep-debug > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libjsound.so > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjsound/libjsound.debuginfo > /usr/bin/touch > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libattach/libattach.debuginfo > /bin/rm -f > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libunpack/libunpack.debuginfo > /bin/rm -f > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libnet/libnet.debuginfo > /usr/bin/objcopy --only-keep-debug > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libunpack.so > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libunpack/libunpack.debuginfo > /usr/bin/objcopy --only-keep-debug > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libnet.so > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libnet/libnet.debuginfo > /bin/rm -f > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libmanagement/libmanagement.debuginfo > /usr/bin/objcopy: libinstrument.debuginfo: Invalid operation > /usr/bin/objcopy --only-keep-debug > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libmanagement.so > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libmanagement/libmanagement.debuginfo > cd > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjsound > && /usr/bin/objcopy --add-gnu-debuglink=libjsound.debuginfo > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libjsound.so > lib/ServiceabilityLibraries.gmk:249: recipe for target > '/home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libinstrument/libinstrument.debuginfo' > failed > gmake[2]: *** > [/home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libinstrument/libinstrument.debuginfo] > Error 1 > gmake[2]: *** Waiting for unfinished jobs.... > cd > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libunpack > && /usr/bin/objcopy --add-gnu-debuglink=libunpack.debuginfo > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libunpack.so > cd > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libnet > && /usr/bin/objcopy --add-gnu-debuglink=libnet.debuginfo > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libnet.so > cd > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libmanagement > && /usr/bin/objcopy --add-gnu-debuglink=libmanagement.debuginfo > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/lib/amd64/libmanagement.so > /usr/bin/touch > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libjsound/libjsound.debuginfo > /usr/bin/touch > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libnet/libnet.debuginfo > /usr/bin/touch > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libunpack/libunpack.debuginfo > /usr/bin/touch > /home/truk/jdk/jdk8/build/bsd-x86_64-normal-server-release/jdk/objs/libmanagement/libmanagement.debuginfo > gmake[2]: Leaving directory '/home/truk/jdk/jdk8/jdk/make' > BuildJdk.gmk:70: recipe for target 'libs-only' failed > gmake[1]: *** [libs-only] Error 2 > gmake[1]: Leaving directory '/home/truk/jdk/jdk8/jdk/make' > /home/truk/jdk/jdk8//make/Main.gmk:119: recipe for target 'jdk-only' failed > gmake: *** [jdk-only] Error 2 > >