delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2009/08/23/14:40:07

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-2.6 required=5.0 tests=AWL,BAYES_00,SPF_PASS
X-Spam-Check-By: sourceware.org
Message-ID: <4A918CF8.6070900@users.sourceforge.net>
Date: Sun, 23 Aug 2009 13:39:52 -0500
From: "Yaakov (Cygwin/X)" <yselkowitz AT users DOT sourceforge DOT net>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.1) Gecko/20090715 Thunderbird/3.0b3
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: flac: rebuild needed for 1.7
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019