On Jul 28, 2010, at 1:42 PM, Wesley Smith wrote: > that's interesting. I had just assumed at CFLAGS would be > concatenated onto CXXFLAGS.
Nope, they are completely distinct to handle the rare cases where the c++ compiler doesn't like all the valid flags that the C compiler accepts. Is there a way we could have made this fact obvious to users? Barry > I see that this isn't the case. I'll try > again. > > wes > > On Wed, Jul 28, 2010 at 11:30 AM, Barry Smith <bsmith at mcs.anl.gov> wrote: >> >> On Jul 28, 2010, at 1:12 PM, Wesley Smith wrote: >> >>> On Wed, Jul 28, 2010 at 11:10 AM, Barry Smith <bsmith at mcs.anl.gov> wrote: >>>> >>>> You are passing the CFLAGS="-arch i386" to C but not g++ hence g++ is >>>> using the 64 bit. You need to set CXXFLAGS also to use 32 bit. >>> >>> yes, but why would it not be able to find any CXX compiler when >>> setting those flags? >> >> >> If you look at the configure.log in detail you can see why. The g++ test >> works,. but then it does a test to see if the g++ and gcc compilers can be >> used together this fails because they are built with different arches. >> >> Barry >> >> sh: g++ -c -o conftest.o conftest.cc >> Executing: g++ -c -o conftest.o conftest.cc >> >> Executing: g++ -o conftest -arch i386 conftest.o >> sh: >> Possible ERROR while running linker: ld: warning: in conftest.o, file was >> built for unsupported file format which is not the architecture being linked >> (i386) >> Undefined symbols: >> "_main", referenced from: >> start in crt1.10.6.o >> ld: symbol(s) not found >> >> >>
