Hi,
I am building JamVM 1.5.2 for a ARM cpu (gumstix buildroot)
and I get an error about __tls_get_addr being undefined.
Messages found on the Interwebs suggest the problem is
that the version of Ulibc which I'm using doesn't support TLS
(thead local storage). Instead of trying to update Ulibc,
I' m just disabling the need for TLS by cutting out the test
for TLS in the configure script. (configure emits #define HAVE_TLS 1
into src/config.h. Changing that to #undef HAVE_TLS or omitting
it disables the code which generates the __tls_get_addr reference.
I don't know why the TLS test succeeds when maybe it should fail.)
So here's a patch for configure.ac which disables the TLS test.
I don't claim this is a good idea but I offer this in case someone
else runs into the same problem.
best
Robert Dodier
--- build_arm_nofpu/jamvm-1.5.2/configure.ac-original 2009-02-03
18:52:35.000000000 -0700
+++ build_arm_nofpu/jamvm-1.5.2/configure.ac 2009-04-02
10:31:35.000000000 -0600
@@ -279,17 +279,6 @@
AC_CHECK_FUNCS(gettimeofday strtol setlocale)
AM_LC_MESSAGES
-dnl TLS is currently disabled on Solaris. The test program links, but
-dnl JamVM doesn't run correctly (tested on OpenSolaris 2008.11).
-
-if test "$host_os" != solaris; then
- AC_MSG_CHECKING([for __thread])
- AC_LINK_IFELSE([AC_LANG_PROGRAM(,[static __thread int foo = 0])],
- [AC_DEFINE([HAVE_TLS],1,[__thread supported by compiler])
- AC_MSG_RESULT([yes])],
- [AC_MSG_RESULT([no])])
-fi
-
AM_MAINTAINER_MODE
AC_CONFIG_LINKS(src/arch.h:src/arch/$arch.h)
------------------------------------------------------------------------------
_______________________________________________
Jamvm-general mailing list
Jamvm-general@...
https://lists.sourceforge.net/lists/listinfo/jamvm-general