This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/54806] [4.7 Regression] Undefined symbols: "___emutls_v.*", ... on x86_64-apple-darwin12
- From: "howarth at nitro dot med.uc.edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Sat, 06 Oct 2012 17:26:51 +0000
- Subject: [Bug middle-end/54806] [4.7 Regression] Undefined symbols: "___emutls_v.*", ... on x86_64-apple-darwin12
- Auto-submitted: auto-generated
- References: <bug-54806-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54806
--- Comment #15 from Jack Howarth <howarth at nitro dot med.uc.edu> 2012-10-06 17:26:51 UTC ---
I believe your no-runtime-stubs.patch used during the initial build of
libstdc++ is at fault...
--- gcc/config/darwin.h.orig 2012-09-13 20:20:33.000000000 -0700
+++ gcc/config/darwin.h 2012-09-13 20:23:03.000000000 -0700
@@ -325,17 +325,8 @@ extern GTY(()) int darwin_ms_struct;
#undef REAL_LIBGCC_SPEC
#define REAL_LIBGCC_SPEC \
"%{static-libgcc|static: -lgcc_eh -lgcc; \
- shared-libgcc|fexceptions|fgnu-runtime: \
- %:version-compare(!> 10.5 mmacosx-version-min= -lgcc_s.10.4) \
- %:version-compare(>< 10.5 10.6 mmacosx-version-min= -lgcc_s.10.5) \
- %:version-compare(!> 10.5 mmacosx-version-min= -lgcc_ext.10.4) \
- %:version-compare(>= 10.5 mmacosx-version-min= -lgcc_ext.10.5) \
- -lgcc ; \
- :%:version-compare(>< 10.3.9 10.5 mmacosx-version-min= -lgcc_s.10.4) \
- %:version-compare(>< 10.5 10.6 mmacosx-version-min= -lgcc_s.10.5) \
- %:version-compare(!> 10.5 mmacosx-version-min= -lgcc_ext.10.4) \
- %:version-compare(>= 10.5 mmacosx-version-min= -lgcc_ext.10.5) \
- -lgcc }"
+ shared-libgcc|fexceptions|fgnu-runtime: -lgcc; \
+ : -lgcc }"
/* We specify crt0.o as -lcrt0.o so that ld will search the library path.
--- libgcc/config/t-slibgcc-darwin.orig 2012-09-13 20:26:11.000000000 -0700
+++ libgcc/config/t-slibgcc-darwin 2012-09-13 20:27:08.000000000 -0700
@@ -39,7 +39,7 @@ endif
LGCC_FILES = libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT)
LGCC_FILES += $(LGCC_STUBS)
-LEXT_STUBS = libgcc_ext.10.4$(SHLIB_EXT) libgcc_ext.10.5$(SHLIB_EXT)
+LEXT_STUBS =
LGCC_FILES += $(LEXT_STUBS)
INSTALL_FILES=$(LGCC_FILES)
These changes will certainly keep config.h in the libstdc++-v3 build directory
from having...
#define HAVE_TLS
Why is it so critical for MacPorts to eliminate the linkage on
libgcc_ext.10.4/ libgcc_ext.10.5?
IMHO, the current approach is extremely radical.