Re: [Ekiga-list] Compile error Ekiga svn.



Wilfred van den Assem wrote:
> 
> 
>> Date: Thu, 7 Jan 2010 20:40:20 +0100
>> From: Eugen Dedu pu-pm univ-fcomte fr
>> To: ekiga-list gnome org
>> Subject: Re: [Ekiga-list] Compile error Ekiga svn.
>>
>> 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/compone
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 -Wswitch-defau
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:
- either compile with -fexceptions, hoping that it overrides the
-fno-exception on that file
- 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

On my machine the compilation works.  I have boost 0.40, but if I
remember correctly it worked with 0.39 too.

Cheers,
-- 
Eugen


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]