Extra symbols returned by check-exports when building 0.8.4 on Lucid.



Hi,

As discussed on IRC; I'm finding some extra symbols when I try to
build 0.8.4 on Lucid. I suspect these are due to the older kernel and
older GCC, but I admit I haven't really dug into the exact cause so
much.

The extra symbols are returned by the objdump -t "$so" | grep
"[.]hidden.*" command run in tools/check-exports.sh:

00040ff4 l     O *ABS*  00000000              .hidden _GLOBAL_OFFSET_TABLE_
00041380 l     O .data  00000000              .hidden __dso_handle
000406e8 l     O .dtors 00000000              .hidden __DTOR_END__
0000fbe4 l     F .text  00000000              .hidden __i686.get_pc_thunk.cx
0002f980 l     F .text  00000014              .hidden __stack_chk_fail_local
0000b1e7 l     F .text  00000000              .hidden __i686.get_pc_thunk.bx
00040e60 l     O *ABS*  00000000              .hidden _DYNAMIC

This was returned by the same objdump command and grep on i386. The
symbols on amd64 are similar, with a slight difference:

../tools/check-exports.sh ./.libs/libnm-util.so ./libnm-util.ver
./.libs/libnm-util.so: checking exported symbols against ./libnm-util.ver
--- ./libnm-util.ver	2011-05-04 13:34:48.000000000 +0000
+++ -	2011-05-04 13:37:42.782033236 +0000
@@ -1,5 +1,10 @@
 {
 global:
+	_DYNAMIC;
+	_GLOBAL_OFFSET_TABLE_;
+	__DTOR_END__;
+	__dso_handle;
+	atexit;
 	nm_connection_add_setting;
 	nm_connection_clear_secrets;
 	nm_connection_compare;

I suspect atexit also comes from the hidden symbols, but I haven't
been able to verify this yet (time to build a x86_64 VM).

Is there any way to properly exclude them so tests succeed?

Regards,

Mathieu Trudel-Lapierre <mathieu tl gmail com>
Freenode: cyphermox, Jabber: mathieu tl gmail com
4096R/EE018C93 1967 8F7D 03A1 8F38 732E  FF82 C126 33E1 EE01 8C93


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