Opened 11 years ago

Closed 10 years ago

#40026 closed defect (duplicate)

libquicktime: build fails with ffmpeg-devel, ffmpeg 2.0.1

Reported by: dbevans (David B. Evans) Owned by: mww@…
Priority: Normal Milestone:
Component: ports Version: 2.2.0
Keywords: ffmpeg Cc: mojca (Mojca Miklavec)
Port: libquicktime

Description

When building libquicktime using ffmpeg-devel (effectively ffmpeg-2.0) as a dependency, the build fails as follows:

libtool: compile:  /usr/bin/clang -DHAVE_CONFIG_H -I. -I../.. -I../../include -I../../include -I/opt/local/include -I/opt/local/include -I/opt/local/include -DLOCALE_DIR=\"/opt/local/share/locale\" -pipe -Os -arch x86_64 -arch i386 -finline-functions -Wall -Winline -Wmissing-declarations -Wdeclaration-after-statement -fvisibility=hidden -c params.c  -fno-common -DPIC -o .libs/params.o
params.c:205:38: error: no member named 'luma_elim_threshold' in 'struct AVCodecContext'
  PARAM_INT("ff_luma_elim_threshold",luma_elim_threshold);
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
params.c:40:10: note: expanded from macro 'PARAM_INT'
    ctx->var = *(int*)value;                         \
         ^
params.c:206:40: error: no member named 'chroma_elim_threshold' in 'struct AVCodecContext'; did you mean 'frame_skip_threshold'?
  PARAM_INT("ff_chroma_elim_threshold",chroma_elim_threshold);
                                       ^~~~~~~~~~~~~~~~~~~~~
                                       frame_skip_threshold
params.c:40:10: note: expanded from macro 'PARAM_INT'
    ctx->var = *(int*)value;                         \
         ^
/opt/local/include/libavcodec/avcodec.h:2297:9: note: 'frame_skip_threshold' declared here
    int frame_skip_threshold;
        ^
params.c:244:34: error: no member named 'inter_threshold' in 'struct AVCodecContext'; did you mean 'me_threshold'?
  PARAM_INT("ff_inter_threshold",inter_threshold);
                                 ^~~~~~~~~~~~~~~
                                 me_threshold
params.c:40:10: note: expanded from macro 'PARAM_INT'
    ctx->var = *(int*)value;                         \
         ^
/opt/local/include/libavcodec/avcodec.h:1713:9: note: 'me_threshold' declared here
    int me_threshold;
        ^
etc ...

Errors are related to deprecated API elements that are allowed in ffmpeg-1.2.2 but not in ffmpeg-2.0.

Build log attached.

Attachments (1)

main-ffmpeg-2.0.log (122.9 KB) - added by dbevans (David B. Evans) 11 years ago.
Build log showing failure

Download all attachments as: .zip

Change History (6)

Changed 11 years ago by dbevans (David B. Evans)

Attachment: main-ffmpeg-2.0.log added

Build log showing failure

comment:1 Changed 11 years ago by dbevans (David B. Evans)

Apparently this problem has been fixed upstream in cvs versions later than 6-06-2013, see #40053.

comment:2 Changed 11 years ago by dbevans (David B. Evans)

Summary: libquicktime: build fails with ffmpeg-devellibquicktime: build fails with ffmpeg-devel, ffmpeg 2.0.1

As expected, this port needs an update (available in upstream CVS but not yet released) to build with ffmpeg 2.0.1 just released. Work around for now is to use libquicktime-devel which has the necessary fixes. libquicktime dependents (mjpegtools, transcode) have been modified to depend on libquicktime-devel for now

comment:3 Changed 10 years ago by mojca (Mojca Miklavec)

Cc: mojca@… added

Cc Me!

comment:4 Changed 10 years ago by mojca (Mojca Miklavec)

I added some patches to #40464. But shouldn't one of these two tickets be marked a duplicate of the other?

comment:5 Changed 10 years ago by dbevans (David B. Evans)

Resolution: duplicate
Status: newclosed

Actually the newer ticket is the duplicate but I'll close this one since you added the patches to the other.

Note: See TracTickets for help on using tickets.