1 votes

Installation de ffmpeg par homebrew : la bibliothèque dyld n'est pas chargée

Après avoir installé ffmpeg via homebrew sans aucune erreur et après avoir confirmé qu'il a été lié, j'obtiens l'erreur suivante lorsque j'essaie de le lancer :

dyld: Library not loaded: @rpath/libopenh264.5.dylib
  Referenced from: /opt/miniconda3/lib/libavcodec.58.54.100.dylib
  Reason: image not found
zsh: abort      ffmpeg

J'ai essayé avec pip, conda, le site ffmpeg.org, en vain. Toute aide serait grandement appréciée !

0voto

Seamus Points 3171

Je ne peux rien vous proposer pour vous aider avec Homebrew. Je l'ai abandonné il y a un certain temps à cause de divers problèmes comme celui-ci. Je peux vous recommander MacPorts en tant que gestionnaire de paquets pour MacOS.

Une fois MacPorts installé, vous devriez pouvoir installer une copie fonctionnelle de ffmpeg . J'ai installé ffmpeg sur mon système MacOS Catalina il y a quelque temps, et je l'utilise régulièrement sans problème. Voici le port que j'ai utilisée :

% sudo port install ffmpeg +nonfree

nonfree était l'une des "variantes" disponibles pour les ffmpeg ; les variantes sont expliquées ici sur le site MacPorts

-1voto

staterium Points 111

Essayer de le faire - j'installe ffmpeg à partir de fûts séparés

brew upgrade --force   homebrew-ffmpeg/ffmpeg/ffmpeg --fetch-HEAD --with-fdk-aac --with-libbluray --with-openh264 --with-srt --with-wavpack --with-webp --with-xvid --with-two-lame --with-opencore-amr --with-librsvg --with-openjpeg --with-openssl@1.1 --with-speex --with-openssl --with-xvid

Homebrew c'est de la merde, ils devraient enfreindre la loi et proposer une version fonctionnelle de ffmpeg. S'ils se soucient trop des licences, cela se traduit par une mauvaise expérience pour l'utilisateur. De plus je suis sur Mojave et ils m'avertissent toujours que "nous ne supportons plus cette version". Mojave devrait toujours être supporté, donc à l'avenir l'utilisation de Homebrew fera que vous n'aurez pas de support. Tout le monde ne veut pas utiliser les derniers logiciels car malheureusement les nouveaux MacOS sont bogués et ne sont plus supportés. Donc si vous utilisez Homebrew, assurez-vous de rester sur la version qui vous convient le mieux et ne mettez JAMAIS à jour.

Je rencontre ce problème en essayant de compiler pianobar. La raison en est que pianobar a plus de ffmpeg dans ses dépendances que ce ffmpeg fonctionnel. vous devez donc trouver une formule sur votre système, par exemple.

/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/pianobar.rb
/usr/local/Cellar/pianobar/2020.11.28_1/.brew/pianobar.rb

vous verrez

class Pianobar < Formula
  desc "Command-line player for https://pandora.com"
  homepage "https://github.com/PromyLOPh/pianobar/"
  url "https://6xq.net/pianobar/pianobar-2020.11.28.tar.bz2"
  sha256 "653bfb96b548259e3ac360752f66fdb77e8e220312e52a43c652f7eb96e7d4fe"
  license "MIT"
  revision 1
  head "https://github.com/PromyLOPh/pianobar.git"

  depends_on "pkg-config" => :build
  depends_on "ffmpeg"
  depends_on "json-c"
  depends_on "libao"
  depends_on "libgcrypt"

  uses_from_macos "curl"

  def install
    # Discard Homebrew's CFLAGS as Pianobar reportedly doesn't like them
    ENV["CFLAGS"] = "-O2 -DNDEBUG " +
                    # Or it doesn't build at all
                    "-std=c99 " +
                    # build if we aren't /usr/local'
                    "#{ENV.cppflags} #{ENV.ldflags}"
    system "make", "PREFIX=#{prefix}"
    system "make", "install", "PREFIX=#{prefix}"

    prefix.install "contrib"
  end

  test do
    require "pty"
    PTY.spawn(bin/"pianobar") do |stdout, stdin, _pid|
      stdin.putc "\n"
      assert_match "pianobar (#{version})", stdout.read
    end
  end
end

Je modifie la ligne depends_on "ffmpeg" à depends_on "homebrew-ffmpeg/ffmpeg/ffmpeg" et répéter l'opération pour /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/pianobar.rb puis je force la réinstallation de pianobar. Cela devrait fonctionner. Si ce n'est pas le cas, vérifiez si le binaire dont vous avez besoin est lié à l'ancienne version de la bibliothèque.

J'espère vraiment que quelqu'un m'aidera à écrire mon propre gestionnaire de paquets, peut-être en Swift plutôt qu'en Ruby, qui sera basé sur la philosophie Portage de Gentoo.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X