[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: building openjdk-7 on kfreebsd-amd64





On 03/21/2012 02:22 PM, Steven Chamberlain wrote:
Thanks for trying it.  Could you please show the output of 'file' and
'ldd' on the linked binary?

You also could try removing this part, which looks like a mistake, from
the compiler flags:

-Wl,-soname=lib.so

That and some other interesting stuff is mentioned at
http://old.nabble.com/patches-for-native-jdk6-on-amd64-td14009995.html


Hi Steven.

I linked java binary without "-Wl,-soname=lib.so".

# gcc-4.6 -o /root/jdk/openjdk-7-7~u3-2.1/build/openjdk.build-boot/bin/java -Xlinker -O1 -Xlinker -version-script=../../../java/main/java/mapfile-amd64 -Xlinker -z -Xlinker defs -Wl,-Bsymbolic-functions -L/root/jdk/openjdk-7-7~u3-2.1/build/openjdk.build-boot/lib/amd64 -Wl,-z,relro -L /root/jdk/openjdk-7-7~u3-2.1/build/openjdk.build-boot/lib/amd64/jli -Wl,--allow-shlib-undefined -Wl,-rpath -Wl,\$ORIGIN/../lib/amd64/jli -Wl,-rpath -Wl,\$ORIGIN/../jre/lib/amd64/jli /root/jdk/openjdk-7-7~u3-2.1/build/openjdk.build-boot/tmp/java/java/obj64/main.o -lpthread -ljli -lz -ldl -lc -Wl,-rpath -Wl,\$ORIGIN/../lib/amd64

and the error is still there:

Error: could not find libjava.so
Error: Could not find Java SE Runtime Environment.

# file /root/jdk/openjdk-7-7~u3-2.1/build/openjdk.build-boot/bin/java
/root/jdk/openjdk-7-7~u3-2.1/build/openjdk.build-boot/bin/java: ELF 64-bit LSB executable, x86-64, version 1 (FreeBSD), dynamically linked (uses shared libs), for GNU/kFreeBSD 8.1.0, BuildID[sha1]=0xb6ff1777060aa9ed1de4b25c72d620ee56e9842a, not stripped

# ldd /root/jdk/openjdk-7-7~u3-2.1/build/openjdk.build-boot/bin/java
libpthread.so.0 => /lib/x86_64-kfreebsd-gnu/libpthread.so.0 (0x0000000801249000) libjli.so => /root/jdk/openjdk-7-7~u3-2.1/build/openjdk.build-boot/bin/../lib/amd64/jli/libjli.so (0x0000000801467000) libz.so.1 => /usr/lib/x86_64-kfreebsd-gnu/libz.so.1 (0x0000000801674000) libdl.so.2 => /lib/x86_64-kfreebsd-gnu/libdl.so.2 (0x000000080188a000) libc.so.0.1 => /lib/x86_64-kfreebsd-gnu/libc.so.0.1 (0x0000000801a8f000)
        /lib/ld-kfreebsd-x86-64.so.1 (0x0000000001021000

# objdump -p /root/jdk/openjdk-7-7~u3-2.1/build/openjdk.build-boot/bin/java

/root/jdk/openjdk-7-7~u3-2.1/build/openjdk.build-boot/bin/java: file format elf64-x86-64-freebsd

Program Header:
PHDR off 0x0000000000000040 vaddr 0x0000000000400040 paddr 0x0000000000400040 align 2**3
         filesz 0x00000000000001f8 memsz 0x00000000000001f8 flags r-x
INTERP off 0x0000000000000238 vaddr 0x0000000000400238 paddr 0x0000000000400238 align 2**0
         filesz 0x000000000000001d memsz 0x000000000000001d flags r--
LOAD off 0x0000000000000000 vaddr 0x0000000000400000 paddr 0x0000000000400000 align 2**21
         filesz 0x00000000000008cc memsz 0x00000000000008cc flags r-x
LOAD off 0x0000000000000da8 vaddr 0x0000000000600da8 paddr 0x0000000000600da8 align 2**21
         filesz 0x0000000000000278 memsz 0x0000000000000288 flags rw-
DYNAMIC off 0x0000000000000dd0 vaddr 0x0000000000600dd0 paddr 0x0000000000600dd0 align 2**3
         filesz 0x0000000000000210 memsz 0x0000000000000210 flags rw-
NOTE off 0x0000000000000258 vaddr 0x0000000000400258 paddr 0x0000000000400258 align 2**2
         filesz 0x0000000000000044 memsz 0x0000000000000044 flags r--
EH_FRAME off 0x00000000000007fc vaddr 0x00000000004007fc paddr 0x00000000004007fc align 2**2
         filesz 0x000000000000002c memsz 0x000000000000002c flags r--
STACK off 0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**3
         filesz 0x0000000000000000 memsz 0x0000000000000000 flags rw-
RELRO off 0x0000000000000da8 vaddr 0x0000000000600da8 paddr 0x0000000000600da8 align 2**0
         filesz 0x0000000000000258 memsz 0x0000000000000258 flags r--

Dynamic Section:
  NEEDED               libpthread.so.0
  NEEDED               libjli.so
  NEEDED               libz.so.1
  NEEDED               libdl.so.2
  NEEDED               libc.so.0.1
RPATH $ORIGIN/../lib/amd64/jli:$ORIGIN/../jre/lib/amd64/jli:$ORIGIN/../lib/amd64
  INIT                 0x0000000000400550
  FINI                 0x00000000004007c8
  HASH                 0x00000000004002a0
  GNU_HASH             0x00000000004002e0
  STRTAB               0x0000000000400398
  SYMTAB               0x0000000000400308
  STRSZ                0x00000000000000e6
  SYMENT               0x0000000000000018
  DEBUG                0x0000000000000000
  PLTGOT               0x0000000000600fe8
  PLTRELSZ             0x0000000000000030
  PLTREL               0x0000000000000007
  JMPREL               0x0000000000400520
  RELA                 0x0000000000400508
  RELASZ               0x0000000000000018
  RELAENT              0x0000000000000018
  VERDEF               0x0000000000400490
  VERDEFNUM            0x0000000000000002
  VERNEED              0x00000000004004c8
  VERNEEDNUM           0x0000000000000002
  VERSYM               0x000000000040047e

Version definitions:
1 0x01 0x000708c1 java
2 0x00 0x0b4ecc71 SUNWprivate_1.1

Version References:
  required from libjli.so:
    0x0b4ecc71 0x00 04 SUNWprivate_1.1
  required from libc.so.0.1:
    0x0d696913 0x00 03 GLIBC_2.3

Best regards
Georgi


Reply to: