flac: rebuild needed for 1.7

Yaakov (Cygwin/X) yselkowitz@users.sourceforge.net
Sun Aug 23 18:40:00 GMT 2009


David,

In <FLAC++/metadata.h>, class FLAC::Metadata::Picture contains some methods:

   void set_width(FLAC__uint32 value) const;
   void set_height(FLAC__uint32 value) const;
   void set_depth(FLAC__uint32 value) const;
   void set_colors(FLAC__uint32 value) const;
   bool set_data(const FLAC__byte *data, FLAC__uint32 data_length);

These are exported in the implib as:

FLAC::Metadata::Picture::set_width(unsigned long) const
FLAC::Metadata::Picture::set_depth(unsigned long) const
FLAC::Metadata::Picture::set_height(unsigned long) const
FLAC::Metadata::Picture::set_colors(unsigned long) const
FLAC::Metadata::Picture::set_data(unsigned char const*, unsigned long)

FLAC__uint32 is typedef'd to uint32_t in <FLAC/ordinals.h>.  The problem 
is that since ~1.7.0-46, uint32_t was changed from 'unsigned long' to 
'unsigned int' in order to fix compile warnings/errors, particularly 
with C++.

So, building something today on 1.7 results in:

undefined reference to `FLAC::Metadata::Picture::set_width(unsigned int) 
const'
undefined reference to `FLAC::Metadata::Picture::set_height(unsigned 
int) const'
undefined reference to `FLAC::Metadata::Picture::set_depth(unsigned int) 
const'
undefined reference to `FLAC::Metadata::Picture::set_colors(unsigned 
int) const'
undefined reference to `FLAC::Metadata::Picture::set_data(unsigned char 
const*, unsigned int)'

The fix is simply to rebuild flac for 1.7, preferably with gcc-4.3 while 
you are at it.  Nothing in the distro depends on libFLAC++6, so you 
shouldn't break anything by doing so.


Yaakov

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list