Lucas Nussbaum wrote: > Package: gnomoradio > Version: 0.15.1-5.2 > Severity: serious > User: debian...@lists.debian.org > Usertags: qa-ftbfs-20090508 qa-ftbfs > Justification: FTBFS on amd64 > > Hi, > > During a rebuild of all packages in sid, your package failed to build on > amd64. > > Relevant part: >> x86_64-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I.. -I.. -pthread >> -I/usr/include/sigc++-2.0 -I/usr/lib/sigc++-2.0/include >> -I/usr/include/libxml++-2.6 -I/usr/lib/libxml++-2.6/include >> -I/usr/include/libxml2 -I/usr/include/glibmm-2.4 >> -I/usr/lib/glibmm-2.4/include -I/usr/include/glib-2.0 >> -I/usr/lib/glib-2.0/include -g -O2 -MT license.lo -MD -MP -MF >> .deps/license.Tpo -c license.cc -fPIC -DPIC -o .libs/license.o >> license.cc: In static member function 'static void >> Rainbow::License::get_and_do(const Glib::ustring&, const sigc::slot<void, >> Rainbow::ref_ptr<Rainbow::License>, sigc::nil, sigc::nil, sigc::nil, >> sigc::nil, sigc::nil, sigc::nil>&, xmlpp::Element*)': >> license.cc:57: error: reference to 'signal' is ambiguous >> /usr/include/signal.h:93: error: candidates are: void (* signal(int, void >> (*)(int)))(int) >> /usr/include/sigc++-2.0/sigc++/signal.h:2598: error: >> template<class T_return, class T_arg1, class T_arg2, class T_arg3, class >> T_arg4, class T_arg5, class T_arg6, class T_arg7> class sigc::signal >> license.cc:57: error: expected primary-expression before 'void' >> license.cc:57: error: expected `;' before 'void' >> license.cc:58: error: 'sig' was not declared in this scope >> make[3]: *** [license.lo] Error 1 > > The full build log is available from: > > http://people.debian.org/~lucas/logs/2009/05/08/gnomoradio_0.15.1-5.2_lsid64.buildlog
Gotta love C++. Write code once, sit around for several years, wake up one day and it suddenly no longer compiles. Is there an easy way to figure out where /usr/include/signal.h is being included? It seems that "signal" in that file is conflicting with sigc::signal. I suspect there are two possibilities: * /usr/include/signal.h was recently #include'd by one of gnomoradio's dependencies. or, * /usr/include/signal.h has always been included, but a new version of g++ has determined this reference to 'signal' to be ambiguous where it had not been before. I no longer use Debian, but I will try to debug this further if I get a chance. Here's a related message on libsigc-list: http://www.nabble.com/namespace-problem-td19310347.html Maybe I ought to just s/signal/sigc::signal/ throughout the source... - Jim -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org