[csw-users] 64bit g++ 4.7.2 exception handling ...
James Lee
james at opencsw.org
Thu Mar 21 11:42:24 CET 2013
On 21/03/2013 10:32, Dmitri Shubin wrote:
>
> $ elfdump -d /opt/gcc-4.8/lib/amd64/libstdc++.so
>
> Dynamic Section: .dynamic
> index tag value
> [0] NEEDED 0x26d9f libm.so.2
> [1] NEEDED 0x26dbb libc.so.1
> [2] NEEDED 0x26dfb libgcc_s.so.1
> [3] INIT 0xd2b40
> [4] FINI 0xd2b50
> [5] SONAME 0x26d90 libstdc++.so.6
> [6] HASH 0x1e0a0
> [7] STRTAB 0x3b9d0
> [8] STRSZ 0x27023
> [9] SYMTAB 0x25710
> [10] SYMENT 0x18
> [11] CHECKSUM 0xf96f
> [12] VERDEF 0x62ad8
> [13] VERDEFNUM 0x1d
> [14] VERNEED 0x629f8
> [15] VERNEEDNUM 0x3
> [16] RELACOUNT 0x230
> [17] PLTRELSZ 0x3d68
> [18] PLTREL 0x7
> [19] JMPREL 0x74830
> [20] RELA 0x64c60
> [21] RELASZ 0x13938
> [22] RELAENT 0x18
> [23] FLAGS 0 0
> [24] FLAGS_1 0 0
> [25] SUNW_STRPAD 0x200
> [26] SUNW_LDMACH 0x3e EM_AMD64
> [27] PLTGOT 0x10b710
> [28-38] NULL 0
>
> I.e. no LAZY for libm.so.1 and libgcc_s.so.1 and no RPATH/RUNPATH set.
On my self build 4.7.2 I do:
$ elfdump -d /opt/XXXX/lib/amd64/libstdc++.so
Dynamic Section: .dynamic
index tag value
[0] POSFLAG_1 0x1 [ LAZY ]
[1] NEEDED 0x26bb7 libm.so.2
[2] NEEDED 0x26bca libc.so.1
[3] POSFLAG_1 0x1 [ LAZY ]
[4] NEEDED 0x26c13 libgcc_s.so.1
[5] INIT 0xdd600
[6] FINI 0xdd610
[7] SONAME 0x26ba8 libstdc++.so.6
[8] RUNPATH 0x26c3b /opt/XXXX/$ISALIST
[9] RPATH 0x26c3b /opt/XXXX/$ISALIST
[10] HASH 0x21170
[11] STRTAB 0x3e878
[12] STRSZ 0x26e4e
[13] SYMTAB 0x28738
[14] SYMENT 0x18
[15] CHECKSUM 0x2251
[16] VERDEF 0x65798
[17] VERDEFNUM 0x1b
[18] VERNEED 0x656c8
[19] VERNEEDNUM 0x3
[20] RELACOUNT 0x23c
[21] PLTRELSZ 0x4038
[22] PLTREL 0x7
[23] JMPREL 0x77578
[24] RELA 0x678b8
[25] RELASZ 0x13cf8
[26] RELAENT 0x18
[27] SYMINFO 0x1d690
[28] SYMINSZ 0x3ae0
[29] SYMINENT 0x4
[30] FLAGS 0 0
[31] FLAGS_1 0 0
[32] SUNW_STRPAD 0x200
[33] SUNW_LDMACH 0x3e EM_AMD64
[34] PLTGOT 0x118c70
[35-45] NULL 0
...but of course that runpath is invalid.
James.
More information about the users
mailing list