[sigc] 2.0.0-2.0.2 fail to build on AMD64
- From: "Robert J. Hansen" <rjh sixdemonbag org>
- To: libsigc-list gnome org
- Subject: [sigc] 2.0.0-2.0.2 fail to build on AMD64
- Date: Wed, 26 May 2004 21:53:17 -0500
Subject should say it all. After doing a vanilla configure, Make
crashes with the following:
=====
make[3]: Entering directory `/home/rjh/libsigc++-2.0.0/sigc++'
/bin/sh ../libtool --mode=link g++ -g -O2 -o libsigc-2.0.la -rpath
/usr/local/lib signal.lo signal_base.lo trackable.lo connection.lo
slot.lo slot_base.lo lambda.lo
g++ -shared
/usr/lib/gcc-lib/x86_64-redhat-linux/3.3.3/../../../../lib64/crti.o
/usr/lib/gcc-lib/x86_64-redhat-linux/3.3.3/crtbeginS.o .libs/signal.o
.libs/signal_base.o .libs/trackable.o .libs/connection.o .libs/slot.o
.libs/slot_base.o .libs/lambda.o
-L/usr/lib/gcc-lib/x86_64-redhat-linux/3.3.3
-L/usr/lib/gcc-lib/x86_64-redhat-linux/3.3.3/../../../../lib64
-L/usr/lib/gcc-lib/x86_64-redhat-linux/3.3.3/../../.. -L/lib/../lib64
-L/usr/lib/../lib64 -lstdc++ -lm -lc -lgcc_s
/usr/lib/gcc-lib/x86_64-redhat-linux/3.3.3/crtendS.o
/usr/lib/gcc-lib/x86_64-redhat-linux/3.3.3/../../../../lib64/crtn.o -o
.libs/libsigc-2.0.so.0.0.0
/usr/lib/gcc-lib/x86_64-redhat-linux/3.3.3/../../../../lib64/crti.o(.init+0x0): In function `_init':
: multiple definition of `_init'
/usr/lib/gcc-lib/x86_64-redhat-linux/3.3.3/../../../../lib64/crti.o(.init+0x0): first defined here
/usr/lib/gcc-lib/x86_64-redhat-linux/3.3.3/../../../../lib64/crti.o(.fini+0x0): In function `_fini':
: multiple definition of `_fini'
/usr/lib/gcc-lib/x86_64-redhat-linux/3.3.3/../../../../lib64/crti.o(.fini+0x0): first defined here
/usr/lib/gcc-lib/x86_64-redhat-linux/3.3.3/crtbeginS.o(.data.rel+0x0):
multiple definition of `__dso_handle'
/usr/lib/gcc-lib/x86_64-redhat-linux/3.3.3/crtbeginS.o(.data.rel+0x0):
first defined here
collect2: ld returned 1 exit status
make[3]: *** [libsigc-2.0.la] Error 1
make[3]: Leaving directory `/home/rjh/libsigc++-2.0.0/sigc++'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/rjh/libsigc++-2.0.0/sigc++'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/rjh/libsigc++-2.0.0'
make: *** [all] Error 2
=====
Google says this is a bug in a lot of existing configure scripts, and
that a workaround can be found just by regenerating the configure script
from aclocal/autoconf. After doing a make clean and regenerating the
configure script, I get the following:
=====
In file included from ../sigc++/signal_base.h:27,
from ../sigc++/signal.h:8,
from signal.cc:20:
../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_arg3>::take)':
../sigc++/functors/slot.h:122: error: syntax error before `;' token
../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_arg4>::take)':
../sigc++/functors/slot.h:158: error: syntax error before `;' token
../sigc++/functors/slot.h: In static member function `static T_return
sigc::internal::slot_call3<T_functor, T_return, T_arg1, T_arg2,
T_arg3>::call_it(sigc::internal::slot_rep*, typename
sigc::type_trait<T_arg3>::take, typename
sigc::type_trait<T_arg4>::take,
typename sigc::type_trait<T_arg5>::take)':
../sigc++/functors/slot.h:196: error: syntax error before `;' token
../sigc++/functors/slot.h: In static member function `static T_return
sigc::internal::slot_call4<T_functor, T_return, T_arg1, T_arg2,
T_arg3,
T_arg4>::call_it(sigc::internal::slot_rep*, typename
sigc::type_trait<T_arg3>::take, typename
sigc::type_trait<T_arg4>::take,
typename sigc::type_trait<T_arg5>::take, typename
sigc::type_trait<T_arg6>::take)':
../sigc++/functors/slot.h:236: error: syntax error before `;' token
../sigc++/functors/slot.h: In static member function `static T_return
sigc::internal::slot_call5<T_functor, T_return, T_arg1, T_arg2,
T_arg3,
T_arg4, T_arg5>::call_it(sigc::internal::slot_rep*, typename
sigc::type_trait<T_arg3>::take, typename
sigc::type_trait<T_arg4>::take,
typename sigc::type_trait<T_arg5>::take, typename
sigc::type_trait<T_arg6>::take, typename
sigc::type_trait<T_arg7>::take)':
../sigc++/functors/slot.h:278: error: syntax error before `;' token
../sigc++/functors/slot.h: In static member function `static T_return
sigc::internal::slot_call6<T_functor, T_return, T_arg1, T_arg2,
T_arg3,
T_arg4, T_arg5, T_arg6>::call_it(sigc::internal::slot_rep*, typename
sigc::type_trait<T_arg3>::take, typename
sigc::type_trait<T_arg4>::take,
typename sigc::type_trait<T_arg5>::take, typename
sigc::type_trait<T_arg6>::take, typename
sigc::type_trait<T_arg7>::take,
typename sigc::type_trait<T_arg6>::take)':
../sigc++/functors/slot.h:322: error: syntax error before `;' token
../sigc++/functors/slot.h: In static member function `static T_return
sigc::internal::slot_call7<T_functor, T_return, T_arg1, T_arg2,
T_arg3,
T_arg4, T_arg5, T_arg6, T_arg7>::call_it(sigc::internal::slot_rep*,
typename
sigc::type_trait<T_arg3>::take, typename
sigc::type_trait<T_arg4>::take,
typename sigc::type_trait<T_arg5>::take, typename
sigc::type_trait<T_arg6>::take, typename
sigc::type_trait<T_arg7>::take,
typename sigc::type_trait<T_arg6>::take, typename
sigc::type_trait<T_arg7>::take)':
../sigc++/functors/slot.h:368: error: syntax error before `;' token
make[3]: *** [signal.lo] Error 1
make[3]: Leaving directory `/home/rjh/libsigc++-2.0.0/sigc++'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/rjh/libsigc++-2.0.0/sigc++'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/rjh/libsigc++-2.0.0'
make: *** [all] Error 2
=====
I've verified this for 2.0.0 through 2.0.2. Anyone have any suggestions
for how to get it to make on AMD64?
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]