Build/Makefile question

Caroline Tice cmtice@google.com
Sat Oct 27 20:46:00 GMT 2012


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.

-- Caroline Tice
cmtice@google.com

/bin/sh ../libtool --tag CXX --tag disable-shared   --mode=compile
/usr/local/google2/cmtice/gcc-fsf.obj/./gcc/xgcc -shared-libgcc
-B/usr/local/google2/cmtice/gcc-fsf.obj/./gcc -nostdinc++\
 -L/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-gnu/32/libstdc++-v3/src
-L/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-gnu/32/libstdc++-v3/src/.libs
-B/usr/loca\
l/x86_64-unknown-linux-gnu/bin/
-B/usr/local/x86_64-unknown-linux-gnu/lib/ -isystem
/usr/local/x86_64-unknown-linux-gnu/include -isystem
/usr/local/x86_64-unknown-linux-gnu/sys-include  -m\
32 -I/usr/local/google2/cmtice/gcc-fsf/libstdc++-v3/../libgcc
-I/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-gnu/32/libstdc++-v3/include/x86_64-unknown-linux-gnu
-I/usr/local\
/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-gnu/32/libstdc++-v3/include
-I/usr/local/google2/cmtice/gcc-fsf/libstdc++-v3/libsupc++
-prefer-pic -D_GLIBCXX_SHARED  -Wall -Wextra -Wwrit\
e-strings -Wcast-qual -Wabi  -fdiagnostics-show-location=once
-ffunction-sections -fdata-sections  -frandom-seed=vtv_init.lo -g -O0
-D_GNU_SOURCE  -m32 -Wl,-L../libsupc++/.libs -Wl,--wh\
ole-archive,-lvtv_init,--no-whole-archive -fvtable-verify=std
-Wno-error -c ../../../../../gcc-fsf/libstdc++-v3/libsupc++/vtv_init.cc
libtool: compile:  /usr/local/google2/cmtice/gcc-fsf.obj/./gcc/xgcc
-shared-libgcc -B/usr/local/google2/cmtice/gcc-fsf.obj/./gcc
-nostdinc++ -L/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-\
unknown-linux-gnu/32/libstdc++-v3/src
-L/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-gnu/32/libstdc++-v3/src/.libs
-B/usr/local/x86_64-unknown-linux-gnu/bin/ -B/usr/local/x86\
_64-unknown-linux-gnu/lib/ -isystem
/usr/local/x86_64-unknown-linux-gnu/include -isystem
/usr/local/x86_64-unknown-linux-gnu/sys-include -m32
-I/usr/local/google2/cmtice/gcc-fsf/libstdc++-\
v3/../libgcc -I/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-gnu/32/libstdc++-v3/include/x86_64-unknown-linux-gnu
-I/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-\
gnu/32/libstdc++-v3/include
-I/usr/local/google2/cmtice/gcc-fsf/libstdc++-v3/libsupc++
-D_GLIBCXX_SHARED -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi
-fdiagnostics-show-location=once -f\
function-sections -fdata-sections -frandom-seed=vtv_init.lo -g -O0
-D_GNU_SOURCE -m32 -Wl,-L../libsupc++/.libs
-Wl,--whole-archive,-lvtv_init,--no-whole-archive -fvtable-verify=std
-Wno-er\
ror -c ../../../../../gcc-fsf/libstdc++-v3/libsupc++/vtv_init.cc
-fPIC -DPIC -D_GLIBCXX_SHARED -o vtv_init.o
../../../../../gcc-fsf/libstdc++-v3/libsupc++/vtv_init.cc:49:54:
warning: constructor priorities from 0 to 100 are reserved for the
implementation [enabled by default]
 void __VLTunprotect() __attribute__((constructor(98)));
                                                      ^
../../../../../gcc-fsf/libstdc++-v3/libsupc++/vtv_init.cc:59:53:
warning: constructor priorities from 0 to 100 are reserved for the
implementation [enabled by default]
 void __VLTprotect() __attribute__((constructor(100)));
                                                     ^
/bin/sh ../libtool --tag=CC   --mode=link
/usr/local/google2/cmtice/gcc-fsf.obj/./gcc/xgcc
-B/usr/local/google2/cmtice/gcc-fsf.obj/./gcc/
-B/usr/local/x86_64-unknown-linux-gnu/bin/ -B/usr/\
local/x86_64-unknown-linux-gnu/lib/ -isystem
/usr/local/x86_64-unknown-linux-gnu/include -isystem
/usr/local/x86_64-unknown-linux-gnu/sys-include  -m32  -g -O0  -m32
-m32 -o libvtv_init.l\
a -rpath /usr/local/lib/../lib32 vtv_init.lo
libtool: link: /usr/local/google2/cmtice/gcc-fsf.obj/./gcc/xgcc
-B/usr/local/google2/cmtice/gcc-fsf.obj/./gcc/
-B/usr/local/x86_64-unknown-linux-gnu/bin/
-B/usr/local/x86_64-unknown-linux-\
gnu/lib/ -isystem /usr/local/x86_64-unknown-linux-gnu/include -isystem
/usr/local/x86_64-unknown-linux-gnu/sys-include  -m32 -shared    -m32
-m32 -m32   -Wl,-soname -Wl,libvtv_init.so.0 -o\
 .libs/libvtv_init.so.0.0.0
libtool: link: (cd ".libs" && rm -f "libvtv_init.so.0" && ln -s
"libvtv_init.so.0.0.0" "libvtv_init.so.0")
libtool: link: (cd ".libs" && rm -f "libvtv_init.so" && ln -s
"libvtv_init.so.0.0.0" "libvtv_init.so")
libtool: link: ar rc .libs/libvtv_init.a  vtv_init.o
libtool: link: ranlib .libs/libvtv_init.a
libtool: link: ( cd ".libs" && rm -f "libvtv_init.la" && ln -s
"../libvtv_init.la" "libvtv_init.la" )
/bin/sh ../libtool --tag CXX --tag disable-shared   --mode=compile
/usr/local/google2/cmtice/gcc-fsf.obj/./gcc/xgcc -shared-libgcc
-B/usr/local/google2/cmtice/gcc-fsf.obj/./gcc -nostdinc++\
 -L/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-gnu/32/libstdc++-v3/src
-L/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-gnu/32/libstdc++-v3/src/.libs
-B/usr/loca\
l/x86_64-unknown-linux-gnu/bin/
-B/usr/local/x86_64-unknown-linux-gnu/lib/ -isystem
/usr/local/x86_64-unknown-linux-gnu/include -isystem
/usr/local/x86_64-unknown-linux-gnu/sys-include  -m\
32 -I/usr/local/google2/cmtice/gcc-fsf/libstdc++-v3/../libgcc
-I/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-gnu/32/libstdc++-v3/include/x86_64-unknown-linux-gnu
-I/usr/local\
/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-gnu/32/libstdc++-v3/include
-I/usr/local/google2/cmtice/gcc-fsf/libstdc++-v3/libsupc++
-prefer-pic -D_GLIBCXX_SHARED  -Wall -Wextra -Wwrit\
e-strings -Wcast-qual -Wabi  -fdiagnostics-show-location=once
-ffunction-sections -fdata-sections  -frandom-seed=vtv_stubs.lo -g -O0
-D_GNU_SOURCE  -m32 -Wl,-L../libsupc++/.libs -Wl,--w\
hole-archive,-lvtv_init,--no-whole-archive -fvtable-verify=std
-Wno-error -c ../../../../../gcc-fsf/libstdc++-v3/libsupc++/vtv_stubs.cc
libtool: compile:  /usr/local/google2/cmtice/gcc-fsf.obj/./gcc/xgcc
-shared-libgcc -B/usr/local/google2/cmtice/gcc-fsf.obj/./gcc
-nostdinc++ -L/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-\
unknown-linux-gnu/32/libstdc++-v3/src
-L/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-gnu/32/libstdc++-v3/src/.libs
-B/usr/local/x86_64-unknown-linux-gnu/bin/ -B/usr/local/x86\
_64-unknown-linux-gnu/lib/ -isystem
/usr/local/x86_64-unknown-linux-gnu/include -isystem
/usr/local/x86_64-unknown-linux-gnu/sys-include -m32
-I/usr/local/google2/cmtice/gcc-fsf/libstdc++-\
v3/../libgcc -I/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-gnu/32/libstdc++-v3/include/x86_64-unknown-linux-gnu
-I/usr/local/google2/cmtice/gcc-fsf.obj/x86_64-unknown-linux-\
gnu/32/libstdc++-v3/include
-I/usr/local/google2/cmtice/gcc-fsf/libstdc++-v3/libsupc++
-D_GLIBCXX_SHARED -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi
-fdiagnostics-show-location=once -f\
function-sections -fdata-sections -frandom-seed=vtv_stubs.lo -g -O0
-D_GNU_SOURCE -m32 -Wl,-L../libsupc++/.libs
-Wl,--whole-archive,-lvtv_init,--no-whole-archive -fvtable-verify=std
-Wno-e\
rror -c ../../../../../gcc-fsf/libstdc++-v3/libsupc++/vtv_stubs.cc
-fPIC -DPIC -D_GLIBCXX_SHARED -o vtv_stubs.o
/bin/sh ../libtool --tag=CC   --mode=link
/usr/local/google2/cmtice/gcc-fsf.obj/./gcc/xgcc
-B/usr/local/google2/cmtice/gcc-fsf.obj/./gcc/
-B/usr/local/x86_64-unknown-linux-gnu/bin/ -B/usr/\
local/x86_64-unknown-linux-gnu/lib/ -isystem
/usr/local/x86_64-unknown-linux-gnu/include -isystem
/usr/local/x86_64-unknown-linux-gnu/sys-include  -m32  -g -O0  -m32
-m32 -o libvtv_stubs.\
la -rpath /usr/local/lib/../lib32 vtv_stubs.lo
libtool: link: /usr/local/google2/cmtice/gcc-fsf.obj/./gcc/xgcc
-B/usr/local/google2/cmtice/gcc-fsf.obj/./gcc/
-B/usr/local/x86_64-unknown-linux-gnu/bin/
-B/usr/local/x86_64-unknown-linux-\
gnu/lib/ -isystem /usr/local/x86_64-unknown-linux-gnu/include -isystem
/usr/local/x86_64-unknown-linux-gnu/sys-include  -m32 -shared    -m32
-m32 -m32   -Wl,-soname -Wl,libvtv_stubs.so.0 -\
o .libs/libvtv_stubs.so.0.0.0
libtool: link: (cd ".libs" && rm -f "libvtv_stubs.so.0" && ln -s
"libvtv_stubs.so.0.0.0" "libvtv_stubs.so.0")
libtool: link: (cd ".libs" && rm -f "libvtv_stubs.so" && ln -s
"libvtv_stubs.so.0.0.0" "libvtv_stubs.so")
libtool: link: ar rc .libs/libvtv_stubs.a  vtv_stubs.o
libtool: link: ranlib .libs/libvtv_stubs.a
libtool: link: ( cd ".libs" && rm -f "libvtv_stubs.la" && ln -s
"../libvtv_stubs.la" "libvtv_stubs.la" )


On Fri, Oct 26, 2012 at 3:40 PM, Jonathan Wakely <jwakely.gcc@gmail.com> wrote:
> CC the libstdc++ list and Benjamin...
>
> On Oct 26, 2012 11:32 PM, "Ian Lance Taylor" <iant@google.com> wrote:
>>
>> On Fri, Oct 26, 2012 at 3:25 PM, Caroline Tice <cmtice@google.com> wrote:
>> > Ok, here are the patches for the Makefile.am and Makefile.in files.  I
>> > am also having trouble with the following issue:  I need to make sure
>> > that one of the new libraries is linked in with libstdc++ when
>> > libstdc++ gets built.  I have not been able to successfully figure out
>> > where exactly is the command that builds & links libstdc++.so.* (yes
>> > I've looked at the build; it's being built with libtool somewhere,
>> > somehow, and no matter where/how I specify the link flag to link in my
>> > new library, the libtool link command is not picking it up).
>>
>> Hmmm, your patch is pretty simple.  You say that this is causing your
>> new libraries to be built both as .a and .so files?  I guess I have no
>> explanation.  What does the output of make look like when building
>> libsupc++?
>>
>> The rule for building libstdc++ itself is in
>> libstdc++/src/Makefile.am.  Note how it links against
>>         $(top_builddir)/libsupc++/libsupc++convenience.la .
>>
>> Ian



More information about the Libstdc++ mailing list