Bug 434119
Summary: | ardour failed massrebuild attempt for GCC 4.3 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Jesse Keating <jkeating> | ||||||||
Component: | ardour | Assignee: | Anthony Green <green> | ||||||||
Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||||
Severity: | medium | Docs Contact: | |||||||||
Priority: | medium | ||||||||||
Version: | rawhide | CC: | dcantrell, hdegoede | ||||||||
Target Milestone: | --- | ||||||||||
Target Release: | --- | ||||||||||
Hardware: | All | ||||||||||
OS: | Linux | ||||||||||
Whiteboard: | |||||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||||
Doc Text: | Story Points: | --- | |||||||||
Clone Of: | Environment: | ||||||||||
Last Closed: | 2008-04-07 14:13:02 UTC | Type: | --- | ||||||||
Regression: | --- | Mount Type: | --- | ||||||||
Documentation: | --- | CRM: | |||||||||
Verified Versions: | Category: | --- | |||||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||||
Embargoed: | |||||||||||
Bug Depends On: | |||||||||||
Bug Blocks: | 433629 | ||||||||||
Attachments: |
|
Description
Jesse Keating
2008-02-22 13:07:23 UTC
libsigc problem, from the buildlog: g++ -o libs/sigc++2/sigc++/connection.os -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -ffast-math -Wall -DHAVE_LIBLO -Ilibs -DENABLE_NLS -Woverloaded-virtual -fPIC -Ilibs/sigc++2 libs/sigc++2/sigc++/connection.cc In file included from libs/sigc++2/sigc++/connection.h:22, from libs/sigc++2/sigc++/connection.cc:21: libs/sigc++2/sigc++/signal.h:1557: error: declaration of 'typedef struct sigc::slot_list<sigc::slot<T_return, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_> > sigc::signal0<T_return, T_accumulator>::slot_list' libs/sigc++2/sigc++/signal.h:166: error: changes meaning of 'slot_list' from 'struct sigc::slot_list<sigc::slot<T_return, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_> >' libs/sigc++2/sigc++/signal.h:1666: error: declaration of 'typedef struct sigc::slot_list<sigc::slot<T_return, T_arg1, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_> > sigc::signal1<T_return, T_arg1, T_accumulator>::slot_list' libs/sigc++2/sigc++/signal.h:166: error: changes meaning of 'slot_list' from 'struct sigc::slot_list<sigc::slot<T_return, T_arg1, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_> >' libs/sigc++2/sigc++/signal.h:1777: error: declaration of 'typedef struct sigc::slot_list<sigc::slot<T_return, T_arg1, T_arg2, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_> > sigc::signal2<T_return, T_arg1, T_arg2, T_accumulator>::slot_list' libs/sigc++2/sigc++/signal.h:166: error: changes meaning of 'slot_list' from 'struct sigc::slot_list<sigc::slot<T_return, T_arg1, T_arg2, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_> >' libs/sigc++2/sigc++/signal.h:1890: error: declaration of 'typedef struct sigc::slot_list<sigc::slot<T_return, T_arg1, T_arg2, T_arg3, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_> > sigc::signal3<T_return, T_arg1, T_arg2, T_arg3, T_accumulator>::slot_list' libs/sigc++2/sigc++/signal.h:166: error: changes meaning of 'slot_list' from 'struct sigc::slot_list<sigc::slot<T_return, T_arg1, T_arg2, T_arg3, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_> >' libs/sigc++2/sigc++/signal.h:2005: error: declaration of 'typedef struct sigc::slot_list<sigc::slot<T_return, T_arg1, T_arg2, T_arg3, T_arg4, sigc::nil_, sigc::nil_, sigc::nil_> > sigc::signal4<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_accumulator>::slot_list' libs/sigc++2/sigc++/signal.h:166: error: changes meaning of 'slot_list' from 'struct sigc::slot_list<sigc::slot<T_return, T_arg1, T_arg2, T_arg3, T_arg4, sigc::nil_, sigc::nil_, sigc::nil_> >' libs/sigc++2/sigc++/signal.h:2122: error: declaration of 'typedef struct sigc::slot_list<sigc::slot<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, sigc::nil_, sigc::nil_> > sigc::signal5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_accumulator>::slot_list' libs/sigc++2/sigc++/signal.h:166: error: changes meaning of 'slot_list' from 'struct sigc::slot_list<sigc::slot<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, sigc::nil_, sigc::nil_> >' libs/sigc++2/sigc++/signal.h:2241: error: declaration of 'typedef struct sigc::slot_list<sigc::slot<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, sigc::nil_> > sigc::signal6<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_accumulator>::slot_list' libs/sigc++2/sigc++/signal.h:166: error: changes meaning of 'slot_list' from 'struct sigc::slot_list<sigc::slot<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, sigc::nil_> >' libs/sigc++2/sigc++/signal.h:2362: error: declaration of 'typedef struct sigc::slot_list<sigc::slot<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7> > sigc::signal7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::slot_list' libs/sigc++2/sigc++/signal.h:166: error: changes meaning of 'slot_list' from 'struct sigc::slot_list<sigc::slot<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7> >' I'm of to fosdem, anyone care to file a bug against libsigc for this? So, this is a bug in libsigc++ however filing a bug isn't going to help because it's been fixed for ages. The error Hans points out is due to the fact that the ardour build is using the internal libgsigc++ which is version 2.0.6. We ship v 2.2.2 which is not affected by this problem... so using system includes will fix the problem from comment 1. That said, there are still a bunch of other errors that need fixing (missing #includes) Created attachment 301396 [details]
ardour 2.2 missing #includes
Created attachment 301397 [details]
ardour 2.4 missing #includes
I also noticed that ardour 2.4 was out and this patch would do it for 2.4 (same
as the previous, however needs an additional file patched)
Created attachment 301398 [details]
ardour spec patch
This uses system libraries and the necessary BuildRequires for my system. I
may be missing an additional one or two though, as I only built locally and not
in mock.
Christopher, thanks for the patches! Since the libs included with ardour fail to build with gcc-4.3, and this has long been fixed in the system versions of these libs. We are now switching to using system libs, I didn't did this in the past because I felt this went against upstreams wishes, but considering the discussion in bug 339391, I assume upstream won't have any big problems with this. Thus, ardour-2.4-1, which is built against system libs and includes Christopher's patches to build with gcc-4.3, is on its way to rawhide. I also send the gcc-4.3 and various other patches we've been sitting on (bad us!) upstream. |