Opened 12 years ago

Closed 12 years ago

#36793 closed defect (fixed)

mplayer2 @ 2.0-20120815_2 build error

Reported by: notinmyhead@… Owned by: neverpanic (Clemens Lang)
Priority: Normal Milestone:
Component: ports Version: 2.1.2
Keywords: haspatch Cc: mike.c.wilding@…, pmetzger (Perry E. Metzger), ryandesign (Ryan Carsten Schmidt), bfg-dev@…
Port: mplayer2

Description

Build error on OSX 10.6.8.

:info:build /usr/bin/gcc-4.2 -MD -MP -Wundef   -Wstrict-prototypes -Wmissing-prototypes -Wdisabled-optimization -Wno-pointer-sign -std=gnu99  -pipe -O2 -arch i386 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -falign-loops=16 -shared-libgcc -mdynamic-no-pic -I.  -I/opt/local/include -I/opt/local/include/freetype2 -O2 -arch i386 -Wno-pointer-sign -I/opt/local/include -I/opt/local/include/freetype2  -I/usr/X11/include -I/opt/local/include/SDL -D_GNU_SOURCE=1 -D_THREAD_SAFE -I/opt/local/include -I/opt/local/include/fribidi -I/opt/local/include/freetype2   -I/opt/local/include -I/opt/local/include/libdvdread -c -o libmpcodecs/vf_lavcdeint.o libmpcodecs/vf_lavcdeint.c
:info:build libmpcodecs/vf_lavc.c: In function 'config':
:info:build libmpcodecs/vf_lavc.c:79: error: 'const struct AVCodec' has no member named 'encode'
:info:build libmpcodecs/vf_lavc.c: In function 'put_image':
:info:build libmpcodecs/vf_lavc.c:99: warning: 'avcodec_encode_video' is deprecated (declared at /opt/local/include/libavcodec/avcodec.h:4314)
:info:build make: *** [libmpcodecs/vf_lavc.o] Error 1
:info:build make: *** Waiting for unfinished jobs....

Attachments (3)

main.log (133.4 KB) - added by notinmyhead@… 12 years ago.
The full log
mplayer2-2.0-20121108.diff (5.0 KB) - added by ryandesign (Ryan Carsten Schmidt) 12 years ago.
patch-Makefile.diff (875 bytes) - added by ryandesign (Ryan Carsten Schmidt) 12 years ago.

Download all attachments as: .zip

Change History (16)

comment:1 Changed 12 years ago by mf2k (Frank Schima)

Please attach the complete main.log.

Changed 12 years ago by notinmyhead@…

Attachment: main.log added

The full log

comment:2 Changed 12 years ago by mf2k (Frank Schima)

Owner: changed from macports-tickets@… to cal@…
Port: mplayer2 added

In the future, please fill in the Port field and Cc the port maintainer(s).

comment:3 Changed 12 years ago by mike.c.wilding@…

Cc: mike.c.wilding@… added

Cc Me!

comment:4 Changed 12 years ago by mike.c.wilding@…

I had a similar error with compiling mplayer 2. The error relates to a change in the struct AVCodec in header libavcodec/aavcodec.h. This header comes from ffmpeg (which is missing from the Portfile as a compile time dependency). Digging around the ffmpeg releases and I can see that the struct changed sometime between ffmpeg release 0.11.x and 1.0. It appears mplayer2 is not compatible with ffmpeg version 1.0.

As a workaround you can install an old version of ffmpeg-devel port 20120917. Download the old ffmpeg-devel port file r97854 from svn or browser:trunk/dports/multimedia/ffmpeg-devel/Portfile?rev=97854 and add to a local macport repository or install manually. See http://guide.macports.org/#development.local-repositories or wiki:howto/InstallingOlderPort for more detailed instructions on installing custom and old ports respectively.

The long term solution would be to update mplayer2 source to compile/link against ffmpeg 1.0; a job for its developers. In the short term one could create an ffmpeg-old port that is marked as conflicting with ffmpeg/ffmpeg-devel and add it as a compile/runtime dependency to mplayer2. Alternatively modify the port file to warn the user if an incompatible version of ffmpeg is installed.

Last edited 12 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:5 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Has duplicate #36966.

We should try updating mplayer2 to the latest version. I've started this, and have had to remove a lot of configure arguments that are no longer recognized. I don't know why this is.

comment:6 in reply to:  5 Changed 12 years ago by neverpanic (Clemens Lang)

Replying to ryandesign@…:

I've started this, and have had to remove a lot of configure arguments that are no longer recognized. I don't know why this is.

Unfortunately mplayer2 upstream changes a lot, as does mplayer upstream.

Last edited 12 years ago by neverpanic (Clemens Lang) (previous) (diff)

comment:7 Changed 12 years ago by pmetzger (Perry E. Metzger)

Cc: perry@… added

Cc Me!

Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: mplayer2-2.0-20121108.diff added

Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: patch-Makefile.diff added

comment:8 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign@… added
Keywords: haspatch added

This patch works for me.

I just kept removing configure arguments until it stopped complaining. I didn't check whether the argument names had perhaps been renamed and should be retained.

comment:9 Changed 12 years ago by bfg-dev@…

Cc: bfg-dev@… added

Cc Me!

comment:10 Changed 12 years ago by bfg-dev@…

I haven't tested it, but it seems this has been fixed upstream: http://devel.mplayer2.org/ticket/202

comment:11 Changed 12 years ago by bfg-dev@…

I have tested the patch from the mplayer ticket, and everything seems to be working fine.

comment:12 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Yes, it was fixed upstream, and the patch I attached to this ticket updates the port to a version that includes that upstream fix. Now the maintainers needs to evaluate and commit that patch.

comment:13 Changed 12 years ago by neverpanic (Clemens Lang)

Resolution: fixed
Status: newclosed

Commited with some changes in r99854. Thanks for the patch.

Note: See TracTickets for help on using tickets.