Package: audiere
Version: 1.9.4-3
User: [EMAIL PROTECTED]
Usertags: ftbfs-gcc-4.4
Tags: patch

Your package fails to build with the upcoming GCC 4.4.  Version 4.4
has not been released yet but I'm building with a snapshot in order
to find errors and give people an advance warning.

GCC 4.4 cleaned up some more C++ headers.  You always have to #include
headers directly and cannot rely for things to be included indirectly.

You can reproduce this problem with gcc-snapshot from unstable.

> Automatic build of audiere_1.9.4-3 on em64t by sbuild/amd64 0.53
...
>  g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" 
> -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"audiere\" 
> -DVERSION=\"1.9.4\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 
> -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 
> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 
> -DNO_FLAC=1 -DHAVE_CLOCK_GETTIME=1 -DSTDC_HEADERS=1 -DHAVE_OSS=1 -DNO_SPEEX=1 
> -I. -I. -g -O2 -g -Wall -O2 -Wall -Wno-non-virtual-dtor -c utility.cpp  -fPIC 
> -DPIC -o .libs/utility.o
> utility.cpp: In member function 'int audiere::ParameterList::getInt(const 
> std::string&, int) const':
> utility.cpp:67: error: 'sprintf' was not declared in this scope
> make[4]: *** [utility.lo] Error 1
> make[4]: Leaving directory `/build/tbm/audiere-1.9.4/src'

OK, this one is easy:

--- src/utility.cpp~    2008-11-09 17:39:55.000000000 +0000
+++ src/utility.cpp     2008-11-09 17:40:02.000000000 +0000
@@ -3,6 +3,7 @@
 #endif
 
 
+#include <cstdio>
 #include <ctype.h>
 #include "utility.h"
 #include "internal.h"

but then I run into:

DeviceFrame.cpp: In constructor 
'DeviceFrame::DeviceFrame(audiere::AudioDevicePtr)':
DeviceFrame.cpp:60: error: call of overloaded 'wxString(const char*)' is 
ambiguous
/usr/include/wx-2.6/wx/string.h:671: note: candidates are: 
wxString::wxString(const wxWCharBuffer&) <near match>
/usr/include/wx-2.6/wx/string.h:643: note:                 
wxString::wxString(wxChar, size_t) <near match>
/usr/include/wx-2.6/wx/string.h:641: note:                 
wxString::wxString(const wxString&) <near match>
/usr/include/wx-2.6/wx/string.h:633: note:                 
wxString::wxString(int) <near match>
make[3]: *** [wxPlayer-DeviceFrame.o] Error 1
make[3]: Leaving directory `/home/tbm/src/audiere-1.9.4/examples/wxPlayer'

which I didn't try to investigate.

But then I run into:

In file included from MIDIDeviceDialog.cpp:1:
MIDIDeviceDialog.h:18: error: extra qualification 'MIDIDeviceDialog::' on 
member 'OnButton'
make: *** [wxPlayer-MIDIDeviceDialog.o] Error 1

which was already a bug with GCC 4.3.  Patch:

--- examples/wxPlayer/MIDIDeviceDialog.h~       2008-11-09 17:48:22.000000000 
+0000
+++ examples/wxPlayer/MIDIDeviceDialog.h        2008-11-09 17:48:31.000000000 
+0000
@@ -15,7 +15,7 @@
   }
 
 private:
-  void MIDIDeviceDialog::OnButton(wxCommandEvent& event);
+  void OnButton(wxCommandEvent& event);
 
   wxTextCtrl* m_name;
 

and then I get:

StreamFrame.cpp:10:24: error: TagsDialog.h: No such file or directory
StreamFrame.cpp: In member function 'void 
StreamFrame::OnViewTags(wxCommandEvent&)':
StreamFrame.cpp:156: error: 'TagsDialog' was not declared in this scope

I'm not sure where TagsDialog.h is supposed to come from...

Anyway, I suggest you send the 2 patches to upstream since they are
obviously correct.
-- 
Martin Michlmayr
http://www.cyrius.com/



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to