Lösung für den Fehler beim Kompilieren des LVGL-Emulators unter Linux

Lösung für den Fehler beim Kompilieren des LVGL-Emulators unter Linux

1. Fehlerphänomen

Ich verwende den LVGL-Emulator in einer virtuellen Maschine und beim Kompilieren des Emulator-Quellcodes tritt ein Fehler auf

 cc: Fehler: Nicht erkannte Befehlszeilenoption „-Wshift-negative-value“
cc: Fehler: Nicht erkannte Befehlszeilenoption „-Wshift-negative-value“
cc: Fehler: Nicht erkannte Befehlszeilenoption „-Wshift-negative-value“
Projektdatei erstellen: lvgl/examples/widgets/chart/lv_example_chart_6.c
Makefile:45: Rezept für Ziel 'build/obj/lvgl/examples/widgets/list/lv_example_list_1.o' ist fehlgeschlagen
make: *** [build/obj/lvgl/examples/widgets/list/lv_example_list_1.o] Fehler 1
make: *** Warte auf unerledigte Aufgaben....
Makefile:45: Rezept für Ziel 'build/obj/lvgl/examples/widgets/spinner/lv_example_spinner_1.o' ist fehlgeschlagen
make: *** [build/obj/lvgl/examples/widgets/spinner/lv_example_spinner_1.o] Fehler 1
Makefile:45: Rezept für Ziel „build/obj/lvgl/examples/widgets/led/lv_example_led_1.o“ ist fehlgeschlagen
make: *** [build/obj/lvgl/examples/widgets/led/lv_example_led_1.o] Fehler 1
cc: Fehler: Nicht erkannte Befehlszeilenoption „-Wshift-negative-value“
Makefile:45: Rezept für Ziel 'build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_3.o' fehlgeschlagen
make: *** [build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_3.o] Fehler 1
cc: Fehler: Nicht erkannte Befehlszeilenoption „-Wshift-negative-value“
Makefile:45: Rezept für Ziel „build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_2.o“ ist fehlgeschlagen
make: *** [build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_2.o] Fehler 1
cc: Fehler: Nicht erkannte Befehlszeilenoption „-Wshift-negative-value“
cc: Fehler: Nicht erkannte Befehlszeilenoption „-Wshift-negative-value“
Makefile:45: Rezept für Ziel 'build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_1.o' fehlgeschlagen
make: *** [build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_1.o] Fehler 1
Makefile:45: Rezept für Ziel „build/obj/lvgl/examples/widgets/checkbox/lv_example_checkbox_1.o“ ist fehlgeschlagen
make: *** [build/obj/lvgl/examples/widgets/checkbox/lv_example_checkbox_1.o] Fehler 1
cc: Fehler: Nicht erkannte Befehlszeilenoption „-Wshift-negative-value“
Makefile:45: Rezept für Ziel 'build/obj/lvgl/examples/widgets/chart/lv_example_chart_6.o' ist fehlgeschlagen
make: *** [build/obj/lvgl/examples/widgets/chart/lv_example_chart_6.o] Fehler 1
Die Kompilierung kann nicht fortgesetzt werden

2. Fehleranalyse

Analysieren Sie den Fehler anhand der Eingabeaufforderungen. Der Fehler cc: weist auf einen Fehler hin. Gehen Sie zum Makefile und stellen Sie fest, dass es zum gcc-Compiler gehört.

20220104214639

Die nicht erkannte Befehlszeilenoption „-Wshift-negative-value“ weist darauf hin, dass der Befehl nicht erkannt werden kann. Die Analyse sollte daher an der GCC-Version liegen. Vielleicht unterstützt meine Version diesen Befehl nicht. Die Lösung besteht darin, die Version zu ändern oder diesen Befehl zu löschen, um zu prüfen, ob er normal ausgeführt werden kann.

3. Fehlerbehebung

Hier werde ich versuchen, den Befehl zu löschen und dann zu kompilieren. Verwenden Sie zuerst grep, um herauszufinden, in welcher Zeile der Datei sich der Befehl befindet

 grep -n "\-Wshift\-negative\-value" Makefile

20220104215405

Bearbeiten Sie die Datei und löschen Sie die entsprechenden Anweisungen

 Vim-Make-Datei 

20220104215518

Speichern und kompilieren Sie das Programm

20220104215531

Die Kompilierung ist erfolgreich und die Demo kann normal ausgeführt werden:

20220104215607

Dies ist das Ende dieses Artikels zur Lösung des Fehlerproblems beim Kompilieren des LVGL-Emulators unter Linux. Weitere relevante Inhalte zum Linux-LVGL-Emulatorfehler finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den verwandten Artikeln unten. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • So erstellen Sie einen unabhängigen Android-Emulator
  • So erstellen Sie schnell einen Android-Emulator
  • Detaillierte Installationsschritte des LVGL-PC-Emulators

<<:  Geschickte Nutzung von WebKit-Box-Reflect zur Erzielung verschiedener dynamischer Effekte (Zusammenfassung)

>>:  So erzwingen Sie die vertikale Anzeige auf mobilen Seiten

Artikel empfehlen

Berechtigungen für Cross-Origin-Image-Ressourcen (CORS-fähiges Image)

Das HTML-Spezifikationsdokument führt das Crossor...

Eine kurze Diskussion über das Implementierungsprinzip von Webpack4-Plugins

Inhaltsverzeichnis Vorwort wissen Übung macht den...

MySQL Serie 4 SQL-Syntax

Inhaltsverzeichnis Tutorial-Reihe 1. Einführung u...

Einführung und Verwendung der Angular-Pipeline PIPE

Vorwort PIPE, übersetzt als Pipeline. Angular Pip...

Beispiel für eine geplante MySQL-Datenbanksicherung

Dieser Artikel beschreibt das Beispiel eines gepl...

Countdown-Effekt mit Javascript implementieren

Verwenden Sie Javascript, um den Countdown-Effekt...

Grafisches Tutorial zur Installation von MySQL 8.0.12

MySQL8.0.12-Installationstutorial, mit allen teil...