tenacityteam / tenacity-legacy

THIS REPO IS NOT MAINTAINED ANYMORE. Please see https://codeberg.org/tenacityteam/tenacity for Tenacity, which is maintained.
https://tenacityaudio.org
Other
6.8k stars 262 forks source link

Incompatibility with ffmpeg 5 #705

Open ghost opened 2 years ago

ghost commented 2 years ago

Guidelines

Version/Commit hash

1:r13926.g0665614b8-1

Describe the bug.

  1. try to install tenacity-git from the AUR with paru
  2. make[2]: [src/CMakeFiles/Tenacity.dir/build.make:173: src/CMakeFiles/Tenacity.dir/AudacityApp.cpp.o] Error 1 make[1]: [CMakeFiles/Makefile2:526: src/CMakeFiles/Tenacity.dir/all] Error 2 make: *** [Makefile:156: all] Error 2 ==> ERROR: A failure occurred in build(). Aborting... error: failed to build 'tenacity-git-1:r13926.g0665614b8-1': error: packages failed to build: tenacity-git-1:r13926.g0665614b8-1

Expected behavior

  1. be able to build and install tenacity normally

OS

Arch Linux with 5.16.10 Kernel

Additional context

In file included from /home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/AudacityApp.cpp:83:
/home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/FFmpeg.h:544:7: error: functions that differ only in their return type cannot be overloaded
      avcodec_find_encoder,
      ^
/home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/FFmpeg.h:451:16: note: expanded from macro 'FFMPEG_FUNCTION_WITH_RETURN'
      inline r n a                                                      \
             ~ ^
/usr/include/libavcodec/codec.h:392:16: note: previous declaration is here
const AVCodec *avcodec_find_encoder(enum AVCodecID id);
      ~~~~~~~~~^
In file included from /home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/AudacityApp.cpp:83:
/home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/FFmpeg.h:550:7: error: functions that differ only in their return type cannot be overloaded
      avcodec_find_encoder_by_name,
      ^
/home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/FFmpeg.h:451:16: note: expanded from macro 'FFMPEG_FUNCTION_WITH_RETURN'
      inline r n a                                                      \
             ~ ^
/usr/include/libavcodec/codec.h:400:16: note: previous declaration is here
const AVCodec *avcodec_find_encoder_by_name(const char *name);
      ~~~~~~~~~^
In file included from /home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/AudacityApp.cpp:83:
/home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/FFmpeg.h:556:7: error: functions that differ only in their return type cannot be overloaded
      avcodec_find_decoder,
      ^
/home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/FFmpeg.h:451:16: note: expanded from macro 'FFMPEG_FUNCTION_WITH_RETURN'
      inline r n a                                                      \
             ~ ^
/usr/include/libavcodec/codec.h:376:16: note: previous declaration is here
const AVCodec *avcodec_find_decoder(enum AVCodecID id);
      ~~~~~~~~~^
In file included from /home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/AudacityApp.cpp:83:
/home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/FFmpeg.h:634:7: error: conflicting types for 'avformat_open_input'
      avformat_open_input,
      ^
/usr/include/libavformat/avformat.h:2097:5: note: previous declaration is here
int avformat_open_input(AVFormatContext **ps, const char *url,
    ^
In file included from /home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/AudacityApp.cpp:83:
/home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/FFmpeg.h:716:7: error: functions that differ only in their return type cannot be overloaded
      av_guess_format,
      ^
/home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/FFmpeg.h:451:16: note: expanded from macro 'FFMPEG_FUNCTION_WITH_RETURN'
      inline r n a                                                      \
             ~ ^
/usr/include/libavformat/avformat.h:2480:23: note: previous declaration is here
const AVOutputFormat *av_guess_format(const char *short_name,
      ~~~~~~~~~~~~~~~~^
In file included from /home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/AudacityApp.cpp:83:
/home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/FFmpeg.h:887:7: warning: 'av_init_packet' is deprecated [-Wdeprecated-declarations]
      av_init_packet(this);
      ^
/usr/include/libavcodec/packet.h:505:1: note: 'av_init_packet' has been explicitly marked deprecated here
attribute_deprecated
^
/usr/include/libavutil/attributes.h:100:49: note: expanded from macro 'attribute_deprecated'
#    define attribute_deprecated __attribute__((deprecated))
                                                ^
In file included from /home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/AudacityApp.cpp:83:
/home/qube/.cache/paru/clone/tenacity-git/src/tenacity/src/FFmpeg.h:921:7: warning: 'av_init_packet' is deprecated [-Wdeprecated-declarations]
      av_init_packet(&that);
      ^
/usr/include/libavcodec/packet.h:505:1: note: 'av_init_packet' has been explicitly marked deprecated here
attribute_deprecated
^
/usr/include/libavutil/attributes.h:100:49: note: expanded from macro 'attribute_deprecated'
#    define attribute_deprecated __attribute__((deprecated))
                                                ^
2 warnings and 5 errors generated.
make[2]: *** [src/CMakeFiles/Tenacity.dir/build.make:173: src/CMakeFiles/Tenacity.dir/AudacityApp.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:526: src/CMakeFiles/Tenacity.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
error: failed to build 'tenacity-git-1:r13926.g0665614b8-1':
error: packages failed to build: tenacity-git-1:r13926.g0665614b8-1

### This issue is not a duplicate
fossdd commented 2 years ago

I can verify this issue. As I successfully builded the tenacity-git package for the same commit some days/weeks ago it has to be a change due to libraries, I guess.

Berlinuxer commented 2 years ago

I can confirm this. I get these error-messages too, while compiling.

jospezial commented 2 years ago

It is incompatible with ffmpeg-5.

FabioLolix commented 2 years ago

I have fixed the pkgbuild to use ffmpeg4.4 for the moment https://aur.archlinux.org/cgit/aur.git/commit/?h=tenacity-git&id=31d2d5ca547ddec7d182534964f99dabe91a0eb1

fossdd commented 2 years ago

Thank you @FabioLolix!

jospezial commented 2 years ago

Please reopen this issue and rename the title to something with ffmpeg-5. Audacity has similar reports.

fossdd commented 2 years ago

Yeah, sure.

ghost commented 2 years ago

i dont quite know how you figured out the incompatibility but its good to know! sadly i cant really help :/