This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/54630] [4.8 Regression] GCC 4.8 --enable-languages=c build fails: Undefined symbols: ___cxa_guard_acquire and ___cxa_guard_release
- From: "baker at usgs dot gov" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 21 Sep 2012 20:34:41 +0000
- Subject: [Bug middle-end/54630] [4.8 Regression] GCC 4.8 --enable-languages=c build fails: Undefined symbols: ___cxa_guard_acquire and ___cxa_guard_release
- Auto-submitted: auto-generated
- References: <bug-54630-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54630
--- Comment #6 from Larry Baker <baker at usgs dot gov> 2012-09-21 20:34:41 UTC ---
I'm looking at CFLAGS_FOR_BUILD and CXXFLAGS_FOR_BUILD as a way to pass
-static-libgcc and -static-libstdc++ to the linker, respectively. In the
top-level generated Makefile, I noticed that CXXFLAGS_FOR_BUILD is not included
in the list of variables in BASE_FLAGS_TO_PASS:
# Flags to pass down to all sub-makes.
BASE_FLAGS_TO_PASS = \
:
Whereas, CC_FOR_BUILD, CFLAGS_FOR_BUILD, and CXX_FOR_BUILD are included.
Is this an oversight?
And, the description of EXTRA_BUILD_FLAGS makes it sound like it should also
include the CXX variants:
# These variables must be set on the make command line for directories
# built for the build system to override those in BASE_FLAGS_TO_PASSS.
EXTRA_BUILD_FLAGS = \
CFLAGS="$(CFLAGS_FOR_BUILD)" \
LDFLAGS="$(LDFLAGS_FOR_BUILD)"
(P.S. BASE_FLAGS_TO_PASSS is misspelled.)