Build/Makefile question
Michael Matz
matz@suse.de
Mon Oct 29 14:55:00 GMT 2012
Hi,
On Sat, 27 Oct 2012, Ian Lance Taylor wrote:
> On Sat, Oct 27, 2012 at 1:45 PM, Caroline Tice <cmtice@google.com> wrote:
> > Ian Tayler (in private communication) asked that I get the part of the
> > build log that shows the .so and .a files being built and send it to
> > the list. Here it is.
>
> I see the problem. libstdc++/libsupc++/Makefile.am overrides the
> default CXXLINK to invoke libtool with --tag disable-shared. Your new
> shared libraries have only C input files, so they are being linked
> with CXXLINK, they are being linked with LINK. You need to override
> the default value of LINK.
Actually her Makefile.am contains C++ sources:
! vtv_init_sources = \
! vtv_init.cc
!
! vtv_stubs_sources = \
! vtv_stubs.cc
which should be enough to make it use CXXLINK, but her Makefile.in
contains:
+ libvtv_init_la_LIBADD =
+ libvtv_init_la_SOURCES = vtv_init.c
+ libvtv_init_la_OBJECTS = vtv_init.lo
+ libvtv_stubs_la_LIBADD =
+ libvtv_stubs_la_SOURCES = vtv_stubs.c
+ libvtv_stubs_la_OBJECTS = vtv_stubs.lo
...
! SOURCES = $(libsupc___la_SOURCES) $(libsupc__convenience_la_SOURCES) \
! libvtv_init.c libvtv_stubs.c
... but then still ...
! vtv_init_sources = \
! vtv_init.cc
!
! vtv_stubs_sources = \
! vtv_stubs.cc
So, the first hunk of Makefile.in contains references to .c files.
Caroline: did you edit Makefile.in yourself? Otherwise I don't see how
this file could have been generated by automake with this inconsistent use
of .c/.cc. Or maybe you have still .c sources lying around in your
source tree?
Ciao,
Michael.
More information about the Gcc
mailing list