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

Bug 508488

Summary: media-video/vlc-2.0.7 USE=flac with media-libs/flac-1.3.0 - flac.c:41:28: fatal error: stream_decoder.h: No such file or directory
Product: Gentoo Linux Reporter: Nikita S. Kipriyanov <nikita.kipriyanov>
Component: Current packagesAssignee: Tom Wijsman (TomWij) (RETIRED) <tomwij>
Status: RESOLVED DUPLICATE    
Severity: normal CC: media-video
Priority: Normal    
Version: unspecified   
Hardware: AMD64   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: Modified ebuild to include patch
Patch to vlc 2.0.7 to modify modules/codec/flac.c to correct headers of stream decoder

Description Nikita S. Kipriyanov 2014-04-23 10:04:20 UTC
I am updating the system, and vlc failed to compile with message:

flac.c:41:28: fatal error: stream_decoder.h: No such file or directory
compilation terminated.
make[5]: *** [libflac_plugin_la-flac.lo] Error 1

The FLAC library was updated recently and the ebuild was stabilized:
https://bugs.gentoo.org/show_bug.cgi?id=507006

I think, it was too early and done without proper testing, as there are consequences.


Reproducible: Always

Steps to Reproduce:
1. emerge --sync
2. emerge -1 flac
3. emerge vlc 
Actual Results:  
at step 1 the tree was updated, at step 2 we built newly stabilised flac 1.3.0, and at step 3 the build failed

Expected Results:  
vlc should compile with new flac

The Fedora bugzilla shows that they also expericenced this problem some time ago, https://bugzilla.redhat.com/show_bug.cgi?id=891123
It looks like all software should now include FLAC/stream_encoder.h, not just stream_encoder.h; they were considering forwarding this to vlc upstream, but I am not aware if they forwarded it.

This might also show up in other software.

This simple diff (containing a change suggested in Fedora bugzilla) completely fixes the problem:

--- modules/codec/flac.c.bak    2014-04-23 13:59:41.943781702 +0400                                                                                                                             
+++ modules/codec/flac.c        2014-04-23 13:58:35.811782445 +0400
@@ -38,8 +38,8 @@
 #include <vlc_codec.h>
 #include <vlc_aout.h>
 
-#include <stream_decoder.h>
-#include <stream_encoder.h>
+#include <FLAC/stream_decoder.h>
+#include <FLAC/stream_encoder.h>
 
 #include <vlc_block_helper.h>
 #include <vlc_bits.h>
Comment 1 Fletch Hasues 2014-04-23 17:07:23 UTC
Created attachment 375558 [details, diff]
Modified ebuild to include patch

Patch of ebuild includes patch file to vlc source.
Comment 2 Fletch Hasues 2014-04-23 17:12:31 UTC
Created attachment 375560 [details, diff]
Patch to vlc 2.0.7 to modify modules/codec/flac.c to correct headers of stream decoder

This patch should be placed in the ebuild's "files" directory. ($PORTDIR)/media-video/vlc/files).

This changes inclusions of stream_decoder.h to FLAC/stream_decoder.h
Comment 3 Fletch Hasues 2014-04-23 17:14:57 UTC
These changes correct this problem for me.
Comment 4 Jeroen Roovers (RETIRED) gentoo-dev 2014-04-24 11:50:03 UTC

*** This bug has been marked as a duplicate of bug 471936 ***