简体   繁体   中英

Unclear compile error for mpd with ffmpeg on Mac arm64 architecture (M1)

I tried to compile (and install) mpd via brew with brew reinstall --build-from-source mpd but ffmpeg seems to have some error with the arm64 architecture as the error states:

Undefined symbols for architecture arm64:
  "av_free(void*)", referenced from:
      AvioStream::~AvioStream() in libdecoder_plugins.a(FfmpegIo.cxx.o)
  "av_malloc(unsigned long)", referenced from:
      AvioStream::Open() in libdecoder_plugins.a(FfmpegIo.cxx.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

I reinstalled ffmpeg (and even it build from source) to make sure it built the arm64 version. Can anyone help me out, about what could be problem?

With an update to 0.28.1 the dependency I could successfully compile it. According to the change logs of the succeeding version 0.29 a build bug has been fixed for macOS: https://raw.githubusercontent.com/MusicPlayerDaemon/MPD/v0.23.9/NEWS

I assume this has been fixed with the commit https://github.com/MusicPlayerDaemon/MPD/commit/59792cb0b801854ee41be72d33db9542735df754 and the related update of the ffmpeg dependency to version 5.1.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM