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. |