This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
using parallel mode on darwin
- From: "Benjamin Kosnik" <bkoz at redhat dot com>
- To: libstdc++ at gcc dot gnu dot org
- Date: Thu, 13 Sep 2007 17:02:55 -0500
- Subject: using parallel mode on darwin
I've been able to successfully test darwin in parallel mode. However,
some additional setup is required at the moment.
Here is a list of issues and solutions.
1) --enable-libgomp, as building libgomp is disabled by default.
2) I was using, as my base gcc, a current compiler with libgomp. This
would not be necessary (?) if LD_LIBRARY_PATH settings for the
build-directory libgomp were being used, instead of DYLD_LIBRARY_PATH
settings on the mac.
This needs to be fixed in the twisty maze of dejagnu.
3) something is wrong with GLIBCXX_ENABLE_PARALLEL. Most probably,
libstdc++ configure is being run before libgomp is built, so the check
for
"${glibcxx_builddir}/../libgomp/omp.h"
fails, and thus no rule for making parallel_list.[o, lo] exist, as
parallel_list.cc is not in src/SOURCES. Maybe instead, we should be
checking for a top-level enable_libgomp variable.
Of course, once libstdc++ is built, and ./config.status --recheck is
run, everything is correctly found and the next "make all" will build
parallel_list.[o,lo], and the required symbols are in libstdc++.
4) on x86/darwin, I had to use --with-arch=core2, so that atomic
buitins could be used. This is due to issues with atomic_flags in
configure.hosts, which only passes special flags on i568 and above and
sparc. Darwin is default configured as i386-apple-darwin8.10.2, and
thus the (admittedly hacky) way of setting the atomic flag fails.
(Also noticed that configuring --with-arch=native fails. Weird!)
I see an extra fail (FAIL: 25_algorithms/search_n/iterator.cc
execution test) but nothing significantly different than my linux
results. So, cool!
For the record, here is my configure flags:
$src/gcc/configure --prefix=$bld/H-x86-gcc --enable-languages=c,c++ --enable-__c
xa_atexit --disable-checking --with-gmp=/Users/bkoz/bin/M-x86-gmp-4.2.1 --with-m
pfr=/Users/bkoz/bin/M-x86-mpfr-2.2.1 --enable-libgomp --with-arch=core2
-benjamin