[PATCH] libdl.c: static link fail for mips

Bernhard Reutner-Fischer rep.dot.nop at gmail.com
Sat Feb 23 09:48:57 UTC 2013


On Fri, Feb 22, 2013 at 02:06:43PM -0800, Vincent Wen wrote:
>When build statically linked applications for MIPS platform,
>sometimes the linker fails with following errors:
>undefined reference to TLS_DTPREL_VALUE
>undefined reference to TLS_TPREL_VALUE

I still suspect that these uses may need a SHARED guard, no?

>The include of dl-tls.h is defined for shared library build.
>Removing the SHARED compilation option to cover static link too.

Otherwise this would be ok, yes.
Can you have a look, please?
TIA,
>
>Signed-off-by: Vincent Wen <wenvincent90 at gmail.com>
>---
> ldso/libdl/libdl.c |    5 ++++-
> 1 files changed, 4 insertions(+), 1 deletions(-)
>
>diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c
>index 2337223..5172754 100644
>--- a/ldso/libdl/libdl.c
>+++ b/ldso/libdl/libdl.c
>@@ -49,9 +49,12 @@ extern void _dl_add_to_slotinfo(struct link_map  *l);
>  * perhaps RCU for the global structures */
> __UCLIBC_MUTEX_STATIC(_dl_mutex, PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP);
> 
>-#ifdef SHARED
> # if defined(USE_TLS) && USE_TLS
> # include <dl-tls.h>
>+# endif
>+
>+#ifdef SHARED
>+# if defined(USE_TLS) && USE_TLS
> extern struct link_map *_dl_update_slotinfo(unsigned long int req_modid);
> # endif
> 
>-- 
>1.7.9.1.g8d994
>
>
>_______________________________________________
>uClibc mailing list
>uClibc at uclibc.org
>http://lists.busybox.net/mailman/listinfo/uclibc


More information about the uClibc mailing list