Bug 201656 - audio/audacity: FFmpeg support causes conflicting type in build
Summary: audio/audacity: FFmpeg support causes conflicting type in build
Status: Closed DUPLICATE of bug 201589
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-07-17 18:15 UTC by Jordan Irwin
Modified: 2015-08-23 03:14 UTC (History)
3 users (show)

See Also:
bugzilla: maintainer-feedback? (xxjack12xx)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jordan Irwin 2015-07-17 18:15:58 UTC
If I try to build/upgrade the audacity 2.1.0 Port (audio/audacity) with FFmpeg support the build fails with errors stating conflicting types in FFmpeg.h:

In file included from AudacityApp.cpp:73:
./FFmpeg.h:690:7: error: conflicting types for 'av_oformat_next'
      av_oformat_next,
      ^
./FFmpeg.h:485:16: note: expanded from macro 'FFMPEG_FUNCTION_WITH_RETURN'
      inline r n a                                                      \
               ^
/usr/local/include/libavformat/avformat.h:1905:17: note: previous declaration is here
AVOutputFormat *av_oformat_next(const AVOutputFormat *f);
                ^
In file included from AudacityApp.cpp:73:
./FFmpeg.h:757:7: error: conflicting types for 'av_fifo_size'
      av_fifo_size,
      ^
./FFmpeg.h:485:16: note: expanded from macro 'FFMPEG_FUNCTION_WITH_RETURN'
      inline r n a                                                      \
               ^
/usr/local/include/libavutil/fifo.h:76:5: note: previous declaration is here
int av_fifo_size(const AVFifoBuffer *f);
    ^
In file included from AudacityApp.cpp:73:
./FFmpeg.h:803:7: error: conflicting types for 'av_dict_get'
      av_dict_get,
      ^
./FFmpeg.h:485:16: note: expanded from macro 'FFMPEG_FUNCTION_WITH_RETURN'
      inline r n a                                                      \
               ^

$ uname -a
FreeBSD AntumD_FreeBSD 10.1-RELEASE FreeBSD 10.1-RELEASE #0 r274401: Tue Nov 11 21:02:49 UTC 2014     root@releng1.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64

I'm guessing there is an incompatibility between audacity 2.1.0 and the currently installed ffmpeg.

$ pkg info audacity
audacity-2.1.0
Name           : audacity
Version        : 2.1.0

$ pkg info ffmpeg
ffmpeg-2.7.1_1,1
Name           : ffmpeg
Version        : 2.7.1_1,1
Comment 1 Jack 2015-07-17 20:02:20 UTC
Yes, audacity does not support the current ffmpeg 2.7 version. Working with the audacity developers to see what we can do.
Comment 2 Jack 2015-07-20 04:48:50 UTC
201589 is a patch to solve this issue.
Comment 3 Ruslan Makhmatkhanov freebsd_committer freebsd_triage 2015-07-27 14:19:55 UTC
This is fixed in r392979. Please update your ports tree.

*** This bug has been marked as a duplicate of bug 201589 ***
Comment 4 gja822 2015-08-22 17:48:57 UTC
Just the same error with audacity-2.1.0_2 and ffmpeg-2.7.2,1.
Checked port with svn till r395046.
uname: FreeBSD 10.2-STABLE #0 r286946
Comment 5 Ruslan Makhmatkhanov freebsd_committer freebsd_triage 2015-08-22 20:30:10 UTC
I can't reproduce it on 10.2-RELEASE-p1 (in poudriere), nor on -head (r286663). Here is the log for 10.2: https://people.freebsd.org/~rm/audacity-2.1.0_2.log

So it may be some local issue, or some 10.2-STABLE regression (doubtful).

Please provide us with full buildlog and output of `make showconfig` in /usr/ports/audio/audacity.
Comment 6 gja822 2015-08-22 21:59:55 UTC
Well, it happens to be compiler dependant. Since, I used to compile with port's gcc (gcc48 in this case). Anyway, there are conflicts in the source as you can see from my output, are there?

By the way, have you tried to load libavformat.so.56 in your compiled version of audacity? My manually hacked version (I deleted/ or installed - don't remember - "const" from mentioned with Errors declarations.) writes that it was compiled with .55 version and I give it system .56 version, so it refuses to work.

http://94.180.117.72/audacity.log
Comment 7 Jack 2015-08-23 03:14:42 UTC
audacity doesn't work with the latest version of ffmpeg, only specific versions. Trying to get the audacity people to make the newer ffmpeg compatible.