> >>>>>>>> Wilfred van den Assem wrote: > >>>>>>>>> Hello, > >>>>>>>>> > >>>>>>>>> I'm trying to compile Ekiga svn (PTLIB & OPAL went fine) but it exits with the following error: > >>>>>>>>> > >>>>>>>>> In file included from /usr/include/boost/function/detail/maybe_include.hpp:13, > >>>>>>>>> from /usr/include/boost/function/function0.hpp:11, > >>>>>>>>> from /usr/include/boost/signals/signal_template.hpp:38, > >>>>>>>>> from /usr/include/boost/signals/signal0.hpp:24, > >>>>>>>>> from /usr/include/boost/signal.hpp:19, > >>>>>>>>> from /usr/include/boost/signals.hpp:9, > >>>>>>>>> from ../lib/engine/framework/menu-builder.h:40, > >>>>>>>>> from ../lib/engine/gui/gtk-core/optional-buttons-gtk.h:45, > >>>>>>>>> from ../lib/engine/gui/gtk-core/optional-buttons-gtk.cpp:38: > >>>>>>>>> /usr/include/boost/function/function_template.hpp: In member function 'boost::function0<R>& boost::function0<R>::operator=(const boost::function0<R>&) [with R = void]': > >>>>>>>>> ../lib/engine/gui/gtk-core/optional-buttons-gtk.cpp:109: instantiated from here > >>>>>>>>> /usr/include/boost/function/function_template.hpp:828: error: exception handling disabled, use -fexceptions to enable > >>>>>>>>> make[3]: *** [optional-buttons-gtk.lo] Fout 1 > >>>>>>>>> make[3]: Map '/usr/src/ekiga/ekiga/lib' wordt verlaten > >>>>>>>>> make[2]: *** [all] Fout 2 > >>>>>>>>> make[2]: Map '/usr/src/ekiga/ekiga/lib' wordt verlaten > >>>>>>>>> make[1]: *** [all-recursive] Fout 1 > >>>>>>>>> make[1]: Map '/usr/src/ekiga/ekiga' wordt verlaten > >>>>>>>>> make: *** [all] Fout 2 > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> I'm using OpenSuse 11.2 x64. > >>>>>>>>> > >>>>>>>>> Is this a problem with the installed boost libs or something else? > >>>>>>>> - What compiler do you use? > >>>>>>> gcc -v > >>>>>>> Using built-in specs. > >>>>>>> Target: x86_64-suse-linux > >>>>>>> Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,fortran,obj-c++,java,ada --enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.4 --enable-ssp --disable-libssp --with-bugurl=http://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --disable-libgcj --disable-libmudflap --with-slibdir=/lib64 --with-system-zlib --enable-__cxa_atexit --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --program-suffix=-4.4 --enable-linux-futex --without-system-libunwind --with-arch-32=i586 --with-tune=generic --build=x86_64-suse-linux > >>>>>>> Thread model: posix > >>>>>>> gcc version 4.4.1 [gcc-4_4-branch revision 150839] (SUSE Linux) > >>>>>>> > >>>>>>> > >>>>>>>> - What is the output of "grep Cflags /usr/lib/pkgconfig/ptlib.pc"? > >>>>>>> grep Cflags /usr/local/lib64/pkgconfig/ptlib.pc > >>>>>>> Cflags: -I${includedir} -DP_64BIT -DPTRACING=1 -D_REENTRANT -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -fno-exceptions > >>>>>>> > >>>>>>>> - What version of boost do you use? > >>>>>>> rpm -qa | grep boost > >>>>>>> libboost_graph1_39_0-1.39.0-9.1.x86_64 > >>>>>>> libboost_test1_39_0-1.39.0-9.1.x86_64 > >>>>>>> libboost_regex1_39_0-1.39.0-9.1.x86_64 > >>>>>>> libboost_math1_39_0-1.39.0-9.1.x86_64 > >>>>>>> libboost_filesystem1_39_0-1.39.0-9.1.x86_64 > >>>>>>> boost-license1_39_0-1.39.0-9.1.x86_64 > >>>>>>> libboost_python1_39_0-1.39.0-9.1.x86_64 > >>>>>>> libboost_program_options1_39_0-1.39.0-9.1.x86_64 > >>>>>>> libboost_wave1_39_0-1.39.0-9.1.x86_64 > >>>>>>> boost-devel-1.39.0-9.1.x86_64 > >>>>>>> boost-jam-3.1.17-4.1.x86_64 > >>>>>>> libboost_signals1_39_0-1.39.0-9.1.x86_64 > >>>>>>> libboost_iostreams1_39_0-1.39.0-9.1.x86_64 > >>>>>>> libboost_mpi1_39_0-1.39.0-9.1.x86_64 > >>>>>>> libboost_thread1_39_0-1.39.0-9.1.x86_64 > >>>>>>> libboost_serialization1_39_0-1.39.0-9.1.x86_64 > >>>>>>> libboost_system1_39_0-1.39.0-9.1.x86_64 > >>>>>>> libboost_date_time1_39_0-1.39.0-9.1.x86_64 > >>>>>>> > >>>>>>> > >>>>>>>> - What is the complete command line which fails ("libtool: compile: g++ > >>>>>>>> -DHAVE_CONFIG_H -I. etc.")? > >>>>>>> libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DSYSCONFDIR=\"/usr/local/etc\" -DEKIGA_PLUGIN_DIR=\"/usr/local/lib/ekiga/3.3.1/plugins\" -I.. -I../lib -I../lib/gmconf -I../lib/gui -I../lib/toolbox -I../lib/engine -I../lib/engine/account -I../lib/engine/addressbook -I../lib/engine/audioinput -I../lib/engine/audiooutput -I../lib/engine/chat -I../lib/engine/framework -I../lib/engine/friend-or-foe -I../lib/engine/gui/gtk-core -I../lib/engine/gui/gtk-frontend -I../lib/engine/hal -I../lib/engine/notification -I../lib/engine/plugin -I../lib/engine/presence -I../lib/engine/protocol -I../lib/engine/videoinput -I../lib/engine/videooutput -I../lib/engine/components/avahi -I../lib/engine/components/avahi-publisher -I../lib/engine/components/call-history -I../lib/engine/components/common-videooutput -I../lib/engine/components/dx-videooutput -I../lib/engine/components/echo -I../lib/engine/components/gmconf-personal-details -I../lib/engine/components/gnome-session -I../lib/engine/c > om > >> po > >>>> ne > >>>>>> nts/hal-dbus -I../lib/engine/components/libnotify -I../lib/engine/components/local-roster -I../lib/engine/components/mlogo-videoinput -I../lib/engine/components/null-audioinput -I../lib/engine/components/null-audiooutput -I../lib/engine/components/opal -I../lib/engine/components/ptlib -I../lib/engine/components/x-videooutput -I../lib/pixops -I/usr/include -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libxml2 -pthread -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -DP_64BIT -DPTRACING=1 -D_REENTRANT -D_GNU_SOURCE=1 -fno-exceptions -I/usr/local/include -I/usr/include/SDL -DP_64BIT -DPTRACING=1 -D_REENTRANT -D_GNU_SOURCE=1 -fno-exceptions -I/usr/local/include -I/usr/include/SDL -I/usr/local/include/opal -g -O2 -Wall -Wextra -Winit-self -Wswitc > h- > >> de > >>>> fau > >>>>>> lt -Wswitch-enum -Wstrict-aliasing=2 -Wfloat-equal -Wshadow -MT optional-buttons-gtk.lo -MD -MP -MF .deps/optional-buttons-gtk.Tpo -c ../lib/engine/gui/gtk-core/optional-buttons-gtk.cpp -fPIC -DPIC -o .libs/optional-buttons-gtk.o > >>>>>>> In file included from /usr/include/boost/function/detail/maybe_include.hpp:13, > >>>>>>> from /usr/include/boost/function/function0.hpp:11, > >>>>>>> from /usr/include/boost/signals/signal_template.hpp:38, > >>>>>>> from /usr/include/boost/signals/signal0.hpp:24, > >>>>>>> from /usr/include/boost/signal.hpp:19, > >>>>>>> from /usr/include/boost/signals.hpp:9, > >>>>>>> from ../lib/engine/framework/menu-builder.h:40, > >>>>>>> from ../lib/engine/gui/gtk-core/optional-buttons-gtk.h:45, > >>>>>>> from ../lib/engine/gui/gtk-core/optional-buttons-gtk.cpp:38: > >>>>>>> /usr/include/boost/function/function_template.hpp: In member function 'boost::function0<R>& boost::function0<R>::operator=(const boost::function0<R>&) [with R = void]': > >>>>>>> ../lib/engine/gui/gtk-core/optional-buttons-gtk.cpp:109: instantiated from here > >>>>>>> /usr/include/boost/function/function_template.hpp:828: error: exception handling disabled, use -fexceptions to enable > >>>>>>> make[2]: *** [optional-buttons-gtk.lo] Fout 1 > >>>>>>> make[2]: Map '/usr/src/ekiga/ekiga/lib' wordt verlaten > >>>>>>> make[1]: *** [install] Fout 2 > >>>>>>> make[1]: Map '/usr/src/ekiga/ekiga/lib' wordt verlaten > >>>>>>> make: *** [install-recursive] Fout 1 > >>>>>> Well, in my opinion you have two workarounds: > >>>>> How can I do this: " > >>>>>> - either compile with -fexceptions, hoping that it overrides the > >>>>>> -fno-exception on that file > >>>>> " > >>>>> Is there a way to set this? > >>>> I think you should start make like this: > >>>> CFLAGS=-fexceptions CXXFLAGS=-fexceptions make > >>>> > >>>>>> - or #define BOOST_NO_EXCEPTIONS at the beginning of the problematic > >>>>>> file; I see at /usr/include/boost/detail that exceptions are "disabled" > >>>>>> if the above variable is set > >>>>> Must I use this file: /usr/include/boost/function/function_template.hpp > >>>> No. Better choose the first workaround (make), and tell us if it works. > >>>> > >>>> -- > >>>> Eugen > >>>> > >>> I tried again with no luck. > >>> > >>> Here you can find the complete output, maybe it helps: > >>> > >>> http://pastebin.ca/1756506 > >> Well, the simplest thing then is that you add at the beginning of > >> lib/engine/gui/gtk-core/optional-buttons-gtk.cpp the following line: > >> > >> #define BOOST_NO_EXCEPTIONS > >> > >> and tell us if that file compiles well. > >> > >> -- > >> Eugen > > > > I tried but same error. Very strange... > > A crude solution then: add #define BOOST_NO_EXCEPTIONS at the beginning > of /usr/include/boost/detail/no_exceptions_support.hpp. > > -- Yes, ekiga compiles. So I think I've done something wrong. This is how I compile Ekiga: ./autogen.sh --with-boost-libdir=/usr/lib64 CFLAGS="-fexceptions" CXXFLAGS="-fexceptions" Minder SPAM in de verbeterde Windows Live Hotmail |