Bug 193282 - [maintainer] multimedia/plexhometheater runtime error avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_h264dsp_init_x86"
Summary: [maintainer] multimedia/plexhometheater runtime error avcodec-53-x86_64-freeb...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Adam Weinberger
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-09-03 14:15 UTC by Ben Woods
Modified: 2014-09-13 17:02 UTC (History)
3 users (show)

See Also:


Attachments
Fixes PR193282 issues by renaming avcodec variable ARCH to FFMPEG_ARCH (527 bytes, patch)
2014-09-03 14:21 UTC, Ben Woods
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ben Woods freebsd_committer freebsd_triage 2014-09-03 14:15:17 UTC
Plexhometheater is unable to play videos, with some of the following error messages appearing in the logs depending on the codec of the video being played.

ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_h264dsp_init_x86"

ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_mlp_init_x86"

This is similar to PR181964 filed previously for multimedia/gstreamer-ffmpeg
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=181964

This issue is caused as during port build some variables not defined in MAKE_ENV/MAKE_ARGS are leaked to do-build target via .MAKEFLAGS rule in bsd.port.mk. According to make(1) man page variable assignments in MAKEFLAGS are treated as those on command line which means they override assignments in Makefiles.

Unfortunately, this breaks building arch-specific code for libavcodec as $(ARCH) in config.mak is no longer honored.

Fix: Rename the variable from ARCH to FFMPEG_ARCH, as is done in multimedia/ffmpeg.
Comment 1 Ben Woods freebsd_committer freebsd_triage 2014-09-03 14:21:38 UTC
Created attachment 146731 [details]
Fixes PR193282 issues by renaming avcodec variable ARCH to FFMPEG_ARCH
Comment 2 Ben Woods freebsd_committer freebsd_triage 2014-09-03 14:23:03 UTC
Reported by user fyr
Comment 3 Kubilay Kocak freebsd_committer freebsd_triage 2014-09-03 16:12:03 UTC
Thanks Ben, nice submission detail.

Please attach poudriere logs or include redports build URL's as a comment if you have them available.
Comment 4 Ben Woods freebsd_committer freebsd_triage 2014-09-04 06:50:28 UTC
Successful redports build here: https://redports.org/buildarchive/20140904040839-65015/
Comment 5 Ben Woods freebsd_committer freebsd_triage 2014-09-04 06:51:47 UTC
(although associated redports rev for this commit is 31539)
Comment 6 fyr 2014-09-05 02:01:14 UTC
This patch 146731 solves the problem for me.
Comment 7 Adam Weinberger freebsd_committer freebsd_triage 2014-09-13 17:02:57 UTC
Committed