Heim > Backend-Entwicklung > C++ > Hauptteil

Warum erhalte ich beim Kompilieren von ffmpeg die Fehlermeldung „Die Verschiebung von R_ARM_MOVW_ABS_NC gegen „ein lokales Symbol' kann beim Erstellen eines gemeinsamen Objekts nicht verwendet werden'?

Barbara Streisand
Freigeben: 2024-11-10 14:37:03
Original
404 Leute haben es durchsucht

Why Am I Getting

Fehler beim Kompilieren mit ffmpeg: „Die Verschiebung von R_ARM_MOVW_ABS_NC gegen „ein lokales Symbol“ kann beim Erstellen eines gemeinsamen Objekts nicht verwendet werden; mit -fPIC neu kompilieren“

Beim Versuch, ffmpeg auf einem ARM-Ubuntu-System neu zu installieren, ist ein Kompilierungsfehler aufgetreten, als ein Programm verwendet wurde, das die ffmpeg-Bibliothek nutzte. Die Fehlermeldung lautete:

/usr/bin/ld: /usr/local/lib/libavcodec.a(amrnbdec.o): relocation R_ARM_MOVW_ABS_NC against `a local symbol' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libavcodec.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
Nach dem Login kopieren

Dieser Fehler entsteht durch den Versuch, eine statische Bibliothek (.a) mit einer dynamischen Bibliothek (.so) zu verknüpfen. Um dieses Problem zu beheben, ist es notwendig, ffmpeg mit der Flagge -fPIC neu zu kompilieren.

Neukompilierung mit -fPIC

Hinzufügen der Flagge --enable-shared während ./ configure weist ffmpeg an, als dynamische Bibliothek zu erstellen. Alternativ können Sie statische Bibliotheken bei Bedarf auch vollständig deaktivieren.

Sobald die ffmpeg-Bibliothek mit -fPIC neu kompiliert wurde, sollte die Kompilierung ohne den oben genannten Fehler erfolgreich fortgesetzt werden.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich beim Kompilieren von ffmpeg die Fehlermeldung „Die Verschiebung von R_ARM_MOVW_ABS_NC gegen „ein lokales Symbol' kann beim Erstellen eines gemeinsamen Objekts nicht verwendet werden'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage