[csw-maintainers] libsigc++ and studio vs. gcc

Maciej Bliziński maciej at opencsw.org
Thu Mar 15 08:20:01 CET 2012


Jan Holzhueter wrote:
> Hi,
> since we have a new boost I though I would give rtorrent a new try :)
> First thing is to build libtorrent which depends on libsigc++.
> This is build with sun studio atm. The last time I looked at it you will
> get other header files when you build with gcc.
> Which now hit's me as I build libtorrent with gcc.

I'm curious how it ever worked. Did you actually link GCC-built rtorrent
with Studio-built libsigc++?

> It fails with erros in the header files:
> 
> libtool: compile:  /opt/csw/bin/g++-4.6 -DHAVE_CONFIG_H -I. -I../../..
> -I. -I./.. -I./../.. -I../../.. -I/opt/csw/include -O2 -pipe -m32
> -march=pentiumpro -DNDEBUG -fvisibility=hidden -I/opt/csw/include
> -I/opt/csw/include/sigc++-2.0 -I/opt/csw/lib/sigc++-2.0/include -MT
> block.lo -MD -MP -MF .deps/block.Tpo -c block.cc  -fPIC -DPIC -o
> .libs/block.o
> In file included from /opt/csw/include/sigc++-2.0/sigc++/signal_base.h:29:0,
>                  from /opt/csw/include/sigc++-2.0/sigc++/signal.h:8,
>                  from ./../../torrent/download_info.h:43,
>                  from ./../../protocol/extensions.h:47,
>                  from ./../../protocol/peer_connection_base.h:47,
>                  from block.cc:44:
> /opt/csw/include/sigc++-2.0/sigc++/functors/slot.h: In static member
> function 'static T_return sigc::internal::slot_call1<T_functor,
> T_return, T_arg1>::call_it(sigc::internal::slot_rep*, typename
> sigc::type_trait<T_arg1>::take)':
> /opt/csw/include/sigc++-2.0/sigc++/functors/slot.h:136:106: error:
> expected '(' before '>' token
> /opt/csw/include/sigc++-2.0/sigc++/functors/slot.h: In static member
> function 'static T_return sigc::internal::slot_call2<T_functor,
> T_return, T_arg1, T_arg2>::call_it(sigc::internal::slot_rep*, typename
> sigc::type_trait<T_arg3>::take, typename sigc::type_trait<T_arg2>::take)':
> /opt/csw/include/sigc++-2.0/sigc++/functors/slot.h:172:106: error:
> expected '(' before ',' token
> In file included from /opt/csw/include/sigc++-2.0/sigc++/signal_base.h:29:0,
>                  from /opt/csw/include/sigc++-2.0/sigc++/signal.h:8,
>                  from ./../../torrent/download_info.h:43,
>                  from ./../../protocol/extensions.h:47,
>                  from ./../../protocol/peer_connection_base.h:47,
>                  from block.cc:44:
> /opt/csw/include/sigc++-2.0/sigc++/functors/slot.h:172:141: error:
> expected '(' before '>' token
> ......
> 
> 
> Should we build a second libsigc++ in /opt/csw/gxx or just rebuild with
> gcc to /opt/csw/gxx
> as I think we should default C++ stuff to gcc anyway?

The current idea is to build GCC stuff into /opt/csw/gxx, so you can go
with that and have a GCC libsigc++ version.

GARCOMPILER = GNU
prefix = $(BUILD_PREFIX)/gxx

Maciej


More information about the maintainers mailing list