View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0003111 | ardour | bugs | public | 2010-05-07 23:27 | 2020-04-19 20:14 |
| Reporter | thorgal | Assigned To | cth103 | ||
| Priority | normal | Severity | major | Reproducibility | always |
| Status | closed | Resolution | fixed | ||
| Platform | x86 | OS | GNU-Linux | OS Version | Debian Unstable |
| Summary | 0003111: Compilation error when waf configure option --no-nls is enabled | ||||
| Description | Ardour3 svn@7079 does not compile when configuration goes like ./waf configure --no-nls. You then get this error: ----------------------------------- ... [157/633] cxx: libs/surfaces/control_protocol/smpte.cc -> build/default/libs/surfaces/control_protocol/smpte_1.o [158/633] cxx: libs/ardour/amp.cc -> build/default/libs/ardour/amp_1.o [159/633] cxx: libs/ardour/analyser.cc -> build/default/libs/ardour/analyser_1.o In file included from /usr/include/c++/4.4/i486-linux-gnu/bits/messages_members.h:37, from /usr/include/c++/4.4/bits/locale_facets_nonio.h:1905, from /usr/include/c++/4.4/locale:43, from /usr/include/boost/dynamic_bitset/dynamic_bitset.hpp:25, from /usr/include/boost/dynamic_bitset.hpp:15, from ../libs/ardour/ardour/session.h:31, from ../libs/ardour/amp.cc:33: /usr/include/libintl.h:40:14: error: expected unqualified-id before ‘const’ /usr/include/libintl.h:40:14: error: expected ‘)’ before ‘const’ /usr/include/libintl.h:40:14: error: expected ‘)’ before ‘const’ /usr/include/libintl.h:40:14: error: expected initializer before ‘const’ /usr/include/libintl.h:45:14: error: expected unqualified-id before ‘const’ /usr/include/libintl.h:45:14: error: expected ‘)’ before ‘const’ /usr/include/libintl.h:45:14: error: expected ‘)’ before ‘const’ /usr/include/libintl.h:45:14: error: expected initializer before ‘const’ /usr/include/libintl.h:52:14: error: expected unqualified-id before ‘const’ /usr/include/libintl.h:52:14: error: expected ‘)’ before ‘const’ /usr/include/libintl.h:52:14: error: expected ‘)’ before ‘const’ /usr/include/libintl.h:52:14: error: expected initializer before ‘const’ /usr/include/libintl.h:62:14: error: expected unqualified-id before ‘unsigned’ /usr/include/libintl.h:62:14: error: expected ‘)’ before ‘unsigned’ /usr/include/libintl.h:62:14: error: expected ‘)’ before ‘unsigned’ /usr/include/libintl.h:62:14: error: expected initializer before ‘unsigned’ /usr/include/libintl.h:68:14: error: expected unqualified-id before ‘unsigned’ /usr/include/libintl.h:68:14: error: expected ‘)’ before ‘unsigned’ /usr/include/libintl.h:68:14: error: expected ‘)’ before ‘unsigned’ /usr/include/libintl.h:68:14: error: expected initializer before ‘unsigned’ /usr/include/libintl.h:74:14: error: expected unqualified-id before ‘unsigned’ /usr/include/libintl.h:74:14: error: expected ‘)’ before ‘unsigned’ /usr/include/libintl.h:74:14: error: expected ‘)’ before ‘unsigned’ /usr/include/libintl.h:74:14: error: expected initializer before ‘unsigned’ /usr/include/libintl.h:83:14: error: expected unqualified-id before ‘const’ /usr/include/libintl.h:83:14: error: expected ‘)’ before ‘const’ /usr/include/libintl.h:83:14: error: expected ‘)’ before ‘const’ /usr/include/libintl.h:83:14: error: expected initializer before ‘const’ /usr/include/libintl.h:87:14: error: expected unqualified-id before ‘const’ /usr/include/libintl.h:87:14: error: expected ‘)’ before ‘const’ /usr/include/libintl.h:87:14: error: expected ‘)’ before ‘const’ /usr/include/libintl.h:87:14: error: expected initializer before ‘const’ /usr/include/libintl.h:92:14: error: expected unqualified-id before ‘const’ /usr/include/libintl.h:92:14: error: expected ‘)’ before ‘const’ /usr/include/libintl.h:92:14: error: expected ‘)’ before ‘const’ /usr/include/libintl.h:92:14: error: expected initializer before ‘const’ [160/633] cxx: libs/ardour/audio_buffer.cc -> build/default/libs/ardour/audio_buffer_1.o Waf: Leaving directory `/disk1/src/ardour3_svn/build' Build failed -> task failed (err 0000001): {task: cxx amp.cc -> amp_1.o} | ||||
| Steps To Reproduce | just configure waf with --no-nls and compile. | ||||
| Additional Information | svn@7079 g++ (Debian 4.4.3-7) 4.4.3 | ||||
| Tags | No tags attached. | ||||
|
|
I think this happens when one of ardour's gettext.h headers gets #included before a header which indirectly #includes libintl.h (as some of the boost stuff does). If ENABLE_NLS is not defined, our gettext.h #defines things like gettext(), and these definitions confuse the inclusion of libintl.h. I think the basic cause of this is Ardour headers which #include i18n.h. This includes gettext.h, which redefines gettext(), and then if libintl.h is subsequently included this error occurs. Unfortunately some headers are templated and so their function bodies must be included in the header, and if they require i18n macros (e.g. _("foo")) then they must #include i18n.h. |
|
|
Actually, it's not so bad. Fixed in SVN. |
|
|
just did a complete check out of the A3 source code yesterday (do not have the version at hand right now) and the issue popped up again with the exact same screen failure, 10 months after the code fix reported by cth103. |
|
|
Fixed again in SVN 0009415. |
|
|
Issue has been closed automatically, by Trigger Close Plugin. Feel free to re-open with additional information if you think the issue is not resolved. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2010-05-07 23:27 | thorgal | New Issue | |
| 2010-05-08 00:03 | cth103 | Status | new => confirmed |
| 2010-05-08 00:32 | cth103 | Note Added: 0007828 | |
| 2010-05-08 01:20 | cth103 | cost | => 0.00 |
| 2010-05-08 01:20 | cth103 | Note Added: 0007829 | |
| 2010-05-08 01:20 | cth103 | Status | confirmed => resolved |
| 2010-05-08 01:20 | cth103 | Resolution | open => fixed |
| 2010-05-08 01:20 | cth103 | Assigned To | => cth103 |
| 2011-03-16 09:33 | thorgal | Note Added: 0010366 | |
| 2011-03-16 09:33 | thorgal | Status | resolved => feedback |
| 2011-03-16 09:33 | thorgal | Resolution | fixed => reopened |
| 2011-04-23 03:34 | cth103 | Note Added: 0010648 | |
| 2011-04-23 03:34 | cth103 | Status | feedback => resolved |
| 2011-04-23 03:34 | cth103 | Resolution | reopened => fixed |
| 2020-04-19 20:14 | system | Note Added: 0022051 | |
| 2020-04-19 20:14 | system | Status | resolved => closed |