Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 271782

Summary: =media-sound/alsaplayer-0.99.80-r1 doesn't compile with USE="flac"
Product: Gentoo Linux Reporter: Samuli Suominen (RETIRED) <ssuominen>
Component: Current packagesAssignee: Stuart Longland (RETIRED) <redhatter>
Status: RESOLVED FIXED    
Severity: normal CC: dominique.c.michel, sound
Priority: High Keywords: REGRESSION
Version: unspecified   
Hardware: All   
OS: Linux   
URL: http://blog.flameeyes.eu/2009/05/24/c-libraries-galore
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 270353    
Attachments: Please review.

Description Samuli Suominen (RETIRED) gentoo-dev 2009-05-29 15:25:07 UTC
This might have to do with >=sys-devel/gcc-4.4.0 or >=sys-libs/glibc-2.10.1

-- cut --

Making all in flac
make[3]: Entering directory `/var/tmp/portage/media-sound/alsaplayer-0.99.80-r1/work/alsaplayer-0.99.80/input/flac'
/bin/sh ../../libtool --tag=CXX   --mode=compile x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../alsaplayer   -D_REENTRANT -march=core2 -msse4.1 -O2 -pipe  -march=core2 -msse4.1 -O2 -pipe -c -o FlacEngine.lo FlacEngine.cpp
/bin/sh ../../libtool --tag=CXX   --mode=compile x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../alsaplayer   -D_REENTRANT -march=core2 -msse4.1 -O2 -pipe  -march=core2 -msse4.1 -O2 -pipe -c -o FlacPlugin.lo FlacPlugin.cpp
/bin/sh ../../libtool --tag=CXX   --mode=compile x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../alsaplayer   -D_REENTRANT -march=core2 -msse4.1 -O2 -pipe  -march=core2 -msse4.1 -O2 -pipe -c -o FlacStream.lo FlacStream.cpp
/bin/sh ../../libtool --tag=CXX   --mode=compile x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../alsaplayer   -D_REENTRANT -march=core2 -msse4.1 -O2 -pipe  -march=core2 -msse4.1 -O2 -pipe -c -o FlacTag.lo FlacTag.cpp
/bin/sh ../../libtool --tag=CXX   --mode=compile x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../alsaplayer   -D_REENTRANT -march=core2 -msse4.1 -O2 -pipe  -march=core2 -msse4.1 -O2 -pipe -c -o FlacSeekableStream.lo FlacSeekableStream.cpp
libtool: compile:  x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../alsaplayer -D_REENTRANT -march=core2 -msse4.1 -O2 -pipe -march=core2 -msse4.1 -O2 -pipe -c FlacEngine.cpp  -fPIC -DPIC -o .libs/FlacEngine.o
libtool: compile:  x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../alsaplayer -D_REENTRANT -march=core2 -msse4.1 -O2 -pipe -march=core2 -msse4.1 -O2 -pipe -c FlacPlugin.cpp  -fPIC -DPIC -o .libs/FlacPlugin.o
libtool: compile:  x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../alsaplayer -D_REENTRANT -march=core2 -msse4.1 -O2 -pipe -march=core2 -msse4.1 -O2 -pipe -c FlacStream.cpp  -fPIC -DPIC -o .libs/FlacStream.o
libtool: compile:  x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../alsaplayer -D_REENTRANT -march=core2 -msse4.1 -O2 -pipe -march=core2 -msse4.1 -O2 -pipe -c FlacTag.cpp  -fPIC -DPIC -o .libs/FlacTag.o
libtool: compile:  x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../alsaplayer -D_REENTRANT -march=core2 -msse4.1 -O2 -pipe -march=core2 -msse4.1 -O2 -pipe -c FlacSeekableStream.cpp  -fPIC -DPIC -o .libs/FlacSeekableStream.o
/bin/sh ../../libtool --tag=CXX   --mode=compile x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../alsaplayer   -D_REENTRANT -march=core2 -msse4.1 -O2 -pipe  -march=core2 -msse4.1 -O2 -pipe -c -o FlacMetadataTag.lo FlacMetadataTag.cpp
/bin/sh ../../libtool --tag=CXX   --mode=compile x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../alsaplayer   -D_REENTRANT -march=core2 -msse4.1 -O2 -pipe  -march=core2 -msse4.1 -O2 -pipe -c -o FlacId3v1Tag.lo FlacId3v1Tag.cpp
libtool: compile:  x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../alsaplayer -D_REENTRANT -march=core2 -msse4.1 -O2 -pipe -march=core2 -msse4.1 -O2 -pipe -c FlacMetadataTag.cpp  -fPIC -DPIC -o .libs/FlacMetadataTag.o
FlacPlugin.cpp: In function ‘int flac_stream_info(input_object*, stream_info*)’:
FlacPlugin.cpp:242: error: invalid conversion from ‘const char*’ to ‘char*’
FlacPlugin.cpp: In function ‘float flac_can_handle(const char*)’:
FlacPlugin.cpp:273: error: invalid conversion from ‘const char*’ to ‘char*’
FlacPlugin.cpp: In function ‘input_plugin* input_plugin_info()’:
FlacPlugin.cpp:332: warning: deprecated conversion from string constant to ‘char*’
FlacPlugin.cpp:334: warning: deprecated conversion from string constant to ‘char*’
make[3]: *** [FlacPlugin.lo] Error 1
make[3]: *** Waiting for unfinished jobs....

-- cut --
Comment 1 Viktor S 2009-05-29 18:54:31 UTC
FlacPlugin.cpp:242: error: invalid conversion from ‘const char*’ to
‘char*’

glibc-2.10.1 related, so add it to the tracker!
Comment 2 Samuli Suominen (RETIRED) gentoo-dev 2009-05-29 22:27:27 UTC
(In reply to comment #1)
> FlacPlugin.cpp:242: error: invalid conversion from ‘const char*’ to
> ‘char*’
> 
> glibc-2.10.1 related, so add it to the tracker!
> 

As I suspected. Done, thanks.
Comment 3 Samuli Suominen (RETIRED) gentoo-dev 2009-06-20 06:30:58 UTC
Feel like bug 181822 was just yesterday :-p Adding upstream (unsure, hi Dominique) from previous bug to this one. To be or not to be, remove USE flac or not..
Comment 4 Dominique Michel 2009-06-20 08:56:42 UTC
Hi all,

Thanks for reporting. 

I don't know what to do here. I have glib-2.20.2 and gcc-4.3.3-r2 and don't get this problem. I get some warnings but the compilation did succeed and alsaplayer is running fine:

FlacPlugin.cpp: In function ‘input_plugin* input_plugin_info()’:
FlacPlugin.cpp:332: warning: deprecated conversion from string constant to ‘char*’
FlacPlugin.cpp:334: warning: deprecated conversion from string constant to ‘char*’
FlacMetadataTag.cpp:113: warning: deprecated conversion from string constant to ‘char*’

Is it some documentation I can read on how to fix this kind of warnings (I am a C/C++ beginner) or can someone provide a patch?
Comment 5 Dominique Michel 2009-06-20 09:04:34 UTC
I have glibc-2.10.1 too.
Comment 6 Samuli Suominen (RETIRED) gentoo-dev 2009-06-20 09:53:54 UTC
(In reply to comment #5)
> I have glibc-2.10.1 too.
> 

It's likely a combination of GCC 4.4.0 and GLIBC 2.10.1 which turns this into fatal error (?)

Please see, http://blog.flameeyes.eu/2009/05/24/c-libraries-galore for hints how this problem can be fixed. It's likely just an issue where "const char" should be used instead of just "char" or otherway around, invalid switching between them?
Comment 7 Samuli Suominen (RETIRED) gentoo-dev 2009-06-20 09:54:59 UTC
And btw, here is our current patch stack for alsaplayer (for other issues),

http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-sound/alsaplayer/files/

Might as well apply them while at it? Unless you already have :-)
Comment 8 Samuli Suominen (RETIRED) gentoo-dev 2009-07-19 21:23:04 UTC
Created attachment 198503 [details, diff]
Please review.

Dominique, with this patch it builds and I can play my flacs fine.
Comment 9 Samuli Suominen (RETIRED) gentoo-dev 2009-07-19 21:23:20 UTC
Closing.. Please merge our patchset :-)
Comment 10 Dominique Michel 2009-07-20 16:14:46 UTC
Well, thank you for the work.

I am very busy just now. Among other thing I try to really learn enough C/C++ in order to be able to hack alsaplayer. My biggest problem with this is not the features of the languages but its syntax. It will take some time to go through this.

In the maintime, I will try and aplly those patches and do a new AP release.