# emerge -va btg These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild N ] net-p2p/btg-0.9.6-r1 USE="gtk ncurses session upnp webinterface -debug -doc -event-callback -minimal -test" 0 kB .... libmm-2.4/include -I/usr/include/gdkmm-2.4 -I/usr/lib/gdkmm-2.4/include -I/usr/include/pangomm-1.4 -I/usr/include/gtk-2.0 -I/usr/include/sigc++-2.0 -I/usr/lib/sigc++-2.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/gtk-2.0/include -I/usr/include/cairomm-1.0 -I/usr/include/pango-1.0 -I/usr/include/cairo -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/pixman-1 -I/usr/include/atk-1.0 -I../../external -march=athlon-xp -pipe -O2 -c errorcurve.cc -fPIC -DPIC -o .libs/libplotmm_la-errorcurve.o In file included from ../../external/plotmm/errorcurve.h:12, from errorcurve.cc:14: ../../external/plotmm/curve.h:143: error: 'SigC' has not been declared ../../external/plotmm/curve.h:143: error: ISO C++ forbids declaration of 'Signal0' with no type ../../external/plotmm/curve.h:143: error: expected ';' before '<' token make[3]: *** [libplotmm_la-errorcurve.lo] Error 1 make[3]: Leaving directory `/var/tmp/portage/net-p2p/btg-0.9.6-r1/work/btg-0.9.6/external/plotmm' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/net-p2p/btg-0.9.6-r1/work/btg-0.9.6/external' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/net-p2p/btg-0.9.6-r1/work/btg-0.9.6' make: *** [all] Error 2 * * ERROR: net-p2p/btg-0.9.6-r1 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 2060: Called die * The specific snippet of code: * emake || die * The die message: * (no error message) * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/net-p2p/btg-0.9.6-r1/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/net-p2p/btg-0.9.6-r1/temp/environment'. ... Reproducible: Always Steps to Reproduce:
Created attachment 155691 [details] /var/tmp/portage/net-p2p/btg-0.9.6-r1/temp/build.log
Created attachment 155693 [details] /var/tmp/portage/net-p2p/btg-0.9.6-r1/temp/environment
Created attachment 155879 [details, diff] Patch for btg-0.9.6-r1 : adding libsigc++ to dependencies.
Comment on attachment 155879 [details, diff] Patch for btg-0.9.6-r1 : adding libsigc++ to dependencies. Actually, official ebuild of btg-0.9.6-r1 has been released without libsigc++ dependence. libsigc++ is needed for bundled plotmm. May you confirm this is working with this patch ?
(In reply to comment #4) > (From update of attachment 155879 [details, diff] [edit]) > Actually, official ebuild of btg-0.9.6-r1 has been released without libsigc++ > dependence. > libsigc++ is needed for bundled plotmm. > > May you confirm this is working with this patch ? > No, it doesn't help... The same error.
Tiziano Müller made a patch about SigC bug for btg-0.9.7 (mostly the same as 0.9.6) may be it will help you. It is in the bug #214491 (http://bugs.gentoo.org/show_bug.cgi?id=214491)
is this still a problem with 0.9.7?
(In reply to comment #7) > is this still a problem with 0.9.7? > I not longer need this application, but I check it: ... i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -pthread -march=prescott -pipe -O3 -fomit-frame-pointer -DNDEBUG -DBTG_DEBUG=0 -DBTG_VERSION=0.9.7 -DBTG_BUILD=0.9.7 -march=prescott -pipe -O3 -fomit-frame-pointer -c cdatafile.cpp -fPIC -DPIC -o .libs/cdatafile.o cdatafile.cpp: In member function 'void CDataFile::SetFileName(t_Str)': cdatafile.cpp:112: warning: deprecated conversion from string constant to 'char*' cdatafile.cpp: In member function 'bool CDataFile::Load(t_Str)': cdatafile.cpp:145: error: 'memset' was not declared in this scope cdatafile.cpp:191: warning: deprecated conversion from string constant to 'char*' cdatafile.cpp: In member function 'bool CDataFile::Save()': cdatafile.cpp:210: warning: deprecated conversion from string constant to 'char*' cdatafile.cpp:216: warning: deprecated conversion from string constant to 'char*' cdatafile.cpp:237: warning: deprecated conversion from string constant to 'char*' cdatafile.cpp:244: warning: deprecated conversion from string constant to 'char*' cdatafile.cpp:259: warning: deprecated conversion from string constant to 'char*' cdatafile.cpp:267: warning: deprecated conversion from string constant to 'char*' cdatafile.cpp: In member function 'float CDataFile::GetFloat(t_Str, t_Str)': cdatafile.cpp:436: error: 'atof' was not declared in this scope cdatafile.cpp: In member function 'int CDataFile::GetInt(t_Str, t_Str)': cdatafile.cpp:447: error: 'INT_MIN' was not declared in this scope cdatafile.cpp:449: error: 'atoi' was not declared in this scope cdatafile.cpp: In member function 'bool CDataFile::CreateSection(t_Str, t_Str)': cdatafile.cpp:544: warning: deprecated conversion from string constant to 'char*' cdatafile.cpp: In function 'int CompareNoCase(t_Str, t_Str)': cdatafile.cpp:718: error: 'strcasecmp' was not declared in this scope cdatafile.cpp: In function 'int WriteLn(std::fstream&, char*, ...)': cdatafile.cpp:754: error: 'memset' was not declared in this scope cdatafile.cpp: In function 'void Report(e_DebugLevel, char*, ...)': cdatafile.cpp:783: error: 'memset' was not declared in this scope make[3]: *** [cdatafile.lo] Error 1 make[3]: Leaving directory `/var/tmp/portage/net-p2p/btg-0.9.7/work/btg-0.9.7/external/ini' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/net-p2p/btg-0.9.7/work/btg-0.9.7/external' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/net-p2p/btg-0.9.7/work/btg-0.9.7' make: *** [all] Error 2 ... Missing: limits, stdlib.h, string.h, strings.h It's gcc 4.3 work :)
Created attachment 159997 [details, diff] Patch for btg-0.9.6-r1 to make the ebuild using libsigc++-2.0* Working on btg 0.9.8 ebuild, I update libsigc++ package and then, I wasn't able to build btg. So I disovered that libsigc++ 2.2 is not compatible with btg. I think libsigc++ 2.0* will be ok so i've wrote this patch to btg-0.9.6-r1 to dep on libsigc++-2.0*. Actually, it's quite dirty coz 2.0 and 2.2 are in the same slot (but with compatibility issues ??) so using 2.0 will do a reverse-update if 2.2 is already installed. So, this patch has to be taken as temporary and using Tiziano patch (see btg-0.9.7 bug) could be useful. I will inform btg dev team about this issue to make btg compatible with libsigc++ 2.2.
The last pasted error has nothing to do with the initial one. May be an other bug should be opened ? For the initial problem, the solution is to use the Tiziano Muller patch. Actually, bundled plotmm was using deprecated namespaces from libsigc++-1* and libsigc++-2.0* was supporting them but libsigc++-2.2* is not anymore. The patch is here : http://bugs.gentoo.org/show_bug.cgi?id=214491 and comes from the bug #214491
All issues are fixed in 0.9.7 ebuild.