Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 595318 - =media-video/ffmpeg-3.1.3 fails with media-libs/openjpeg-2.1.1_p20160922
Summary: =media-video/ffmpeg-3.1.3 fails with media-libs/openjpeg-2.1.1_p20160922
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Media-video project
URL: https://trac.ffmpeg.org/ticket/5694
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-09-27 22:37 UTC by Lars Wendler (Polynomial-C) (RETIRED)
Modified: 2016-10-15 18:16 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log.xz (build.log.xz,46.25 KB, application/x-xz)
2016-09-27 22:38 UTC, Lars Wendler (Polynomial-C) (RETIRED)
Details
ffmpeg_opj2.patch (ffmpeg_opj2.patch,1.92 KB, patch)
2016-09-28 15:54 UTC, Paolo Pedroni
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2016-09-27 22:37:19 UTC
libavcodec/libopenjpegdec.o: In function `libopenjpeg_decode_frame':
libopenjpegdec.c:(.text+0x1a7): undefined reference to `opj_create_decompress'
libopenjpegdec.c:(.text+0x1c5): undefined reference to `opj_set_error_handler'
libopenjpegdec.c:(.text+0x1df): undefined reference to `opj_set_warning_handler'
libopenjpegdec.c:(.text+0x1f9): undefined reference to `opj_set_info_handler'
libopenjpegdec.c:(.text+0x223): undefined reference to `opj_setup_decoder'
libopenjpegdec.c:(.text+0x22d): undefined reference to `opj_stream_default_create'
libopenjpegdec.c:(.text+0x248): undefined reference to `opj_stream_set_read_function'
libopenjpegdec.c:(.text+0x257): undefined reference to `opj_stream_set_skip_function'
libopenjpegdec.c:(.text+0x266): undefined reference to `opj_stream_set_seek_function'
libopenjpegdec.c:(.text+0x275): undefined reference to `opj_stream_set_user_data'
libopenjpegdec.c:(.text+0x282): undefined reference to `opj_stream_set_user_data_length'
libopenjpegdec.c:(.text+0x292): undefined reference to `opj_read_header'
libopenjpegdec.c:(.text+0x3e0): undefined reference to `opj_create_decompress'
libopenjpegdec.c:(.text+0x3f6): undefined reference to `opj_image_destroy'
libopenjpegdec.c:(.text+0x3fe): undefined reference to `opj_stream_destroy'
libopenjpegdec.c:(.text+0x406): undefined reference to `opj_destroy_codec'
libopenjpegdec.c:(.text+0x621): undefined reference to `opj_decode'
libavcodec/libopenjpegdec.o: In function `libopenjpeg_decode_init':
libopenjpegdec.c:(.text.unlikely+0xa): undefined reference to `opj_set_default_decoder_parameters'
libavcodec/libopenjpegdec.o: In function `libopenjpeg_static_init':
libopenjpegdec.c:(.text.unlikely+0x2b): undefined reference to `opj_version'
libavcodec/libopenjpegenc.o: In function `libopenjpeg_encode_frame':
libopenjpegenc.c:(.text+0x787): undefined reference to `opj_create_compress'
libopenjpegenc.c:(.text+0x7a5): undefined reference to `opj_set_error_handler'
libopenjpegenc.c:(.text+0x7bb): undefined reference to `opj_set_warning_handler'
libopenjpegenc.c:(.text+0x7e8): undefined reference to `opj_stream_destroy'
libopenjpegenc.c:(.text+0x7f0): undefined reference to `opj_destroy_codec'
libopenjpegenc.c:(.text+0xc08): undefined reference to `opj_set_info_handler'
libopenjpegenc.c:(.text+0xc1f): undefined reference to `opj_setup_encoder'
libopenjpegenc.c:(.text+0xc54): undefined reference to `opj_stream_default_create'
libopenjpegenc.c:(.text+0xc79): undefined reference to `opj_stream_set_write_function'
libopenjpegenc.c:(.text+0xc88): undefined reference to `opj_stream_set_skip_function'
libopenjpegenc.c:(.text+0xc97): undefined reference to `opj_stream_set_seek_function'
libopenjpegenc.c:(.text+0xca6): undefined reference to `opj_stream_set_user_data'
libopenjpegenc.c:(.text+0xcb5): undefined reference to `opj_start_compress'
libopenjpegenc.c:(.text+0xcc4): undefined reference to `opj_encode'
libopenjpegenc.c:(.text+0xd13): undefined reference to `opj_end_compress'
libavcodec/libopenjpegenc.o: In function `libopenjpeg_encode_close':
libopenjpegenc.c:(.text.unlikely+0xa): undefined reference to `opj_image_destroy'
libavcodec/libopenjpegenc.o: In function `libopenjpeg_encode_init':
libopenjpegenc.c:(.text.unlikely+0x44): undefined reference to `opj_set_default_encoder_parameters'
libopenjpegenc.c:(.text.unlikely+0x10f): undefined reference to `opj_image_destroy'
libopenjpegenc.c:(.text.unlikely+0x560): undefined reference to `opj_image_create'
/usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/../../../../x86_64-pc-linux-gnu/bin/ld: libavcodec/libavcodec.so.57: hidden symbol `opj_read_header' isn't defined
/usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/../../../../x86_64-pc-linux-gnu/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
make: *** [/var/tmp/portage/media-video/ffmpeg-3.1.3/work/ffmpeg-3.1.3/library.mak:100: libavcodec/libavcodec.so.57] Error 1
 * ERROR: media-video/ffmpeg-3.1.3::gentoo failed (compile phase):
 *   emake failed


See URL for a fix...
Comment 1 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2016-09-27 22:38:23 UTC
Created attachment 448172 [details]
build.log.xz
Comment 2 Paolo Pedroni 2016-09-28 15:54:43 UTC
Created attachment 448214 [details, diff]
ffmpeg_opj2.patch

This patch from upstream trak fixes compilation with openjpeg-2.1.1_p20160922
Comment 3 Alexis Ballier gentoo-dev 2016-09-29 16:33:26 UTC
commit 6f1595fb23b828b52ad4e8dbe60efb3f9decbfec
Author: Alexis Ballier <aballier@gentoo.org>
Date:   Thu Sep 29 18:32:51 2016 +0200

    media-video/ffmpeg: add patch to build with latest openjpeg, bug #595318
    
 

thx
Comment 4 A Blamey 2016-10-04 19:40:33 UTC
This patch is needed in ffmpeg-9999.ebuild too.
Comment 5 jospezial 2016-10-15 18:16:40 UTC
(In reply to gentoobugzilla from comment #4)
> This patch is needed in ffmpeg-9999.ebuild too.

ffmpeg-9999 is now fixed upstream.
http://git.videolan.org/?p=ffmpeg.git&a=search&h=HEAD&st=commit&s=jpeg

27 hours ago 	Andreas Cadhalpun	libopenjpegenc: fix out-of-bounds reads when filling...
libopenjpegenc: fix out-of-bounds reads when...
...w is unsigned (at least in openjpeg2), so the
	commit | commitdiff | tree
27 hours ago 	Andreas Cadhalpun	libopenjpegenc: stop reusing image data buffer for...
libopenjpegenc: stop reusing image data buffer...
openjpeg 2 sets the data pointers of the...
	commit | commitdiff | tree
47 hours ago 	Andreas Cadhalpun	configure: fix detection of libopenjpeg
configure: fix detection of libopenjpeg
hardcode this in libavcodec/libopenjpeg{dec,enc}.c.
Finally, check for non-static openjpeg 2.1, too.