Linux で LVGL エミュレータをコンパイルする際のエラーの解決方法

Linux で LVGL エミュレータをコンパイルする際のエラーの解決方法

1. エラー現象

仮想マシンでLVGLエミュレータを使用していますが、エミュレータのソースコードをコンパイルするときにエラーが発生します

cc: エラー: 認識されないコマンドライン オプション '-Wshift-negative-value'
cc: エラー: 認識されないコマンドライン オプション '-Wshift-negative-value'
cc: エラー: 認識されないコマンドライン オプション '-Wshift-negative-value'
プロジェクトファイルのビルド: lvgl/examples/widgets/chart/lv_example_chart_6.c
Makefile:45: ターゲット 'build/obj/lvgl/examples/widgets/list/lv_example_list_1.o' のレシピが失敗しました
作成: *** [build/obj/lvgl/examples/widgets/list/lv_example_list_1.o] エラー 1
make: *** 未完了のタスクを待機しています....
Makefile:45: ターゲット 'build/obj/lvgl/examples/widgets/spinner/lv_example_spinner_1.o' のレシピが失敗しました
作成: *** [build/obj/lvgl/examples/widgets/spinner/lv_example_spinner_1.o] エラー 1
Makefile:45: ターゲット 'build/obj/lvgl/examples/widgets/led/lv_example_led_1.o' のレシピが失敗しました
作成: *** [build/obj/lvgl/examples/widgets/led/lv_example_led_1.o] エラー 1
cc: エラー: 認識されないコマンドライン オプション '-Wshift-negative-value'
Makefile:45: ターゲット 'build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_3.o' のレシピが失敗しました
作成: *** [build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_3.o] エラー 1
cc: エラー: 認識されないコマンドライン オプション '-Wshift-negative-value'
Makefile:45: ターゲット 'build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_2.o' のレシピが失敗しました
作成: *** [build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_2.o] エラー 1
cc: エラー: 認識されないコマンドライン オプション '-Wshift-negative-value'
cc: エラー: 認識されないコマンドライン オプション '-Wshift-negative-value'
Makefile:45: ターゲット 'build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_1.o' のレシピが失敗しました
作成: *** [build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_1.o] エラー 1
Makefile:45: ターゲット 'build/obj/lvgl/examples/widgets/checkbox/lv_example_checkbox_1.o' のレシピが失敗しました
作成: *** [build/obj/lvgl/examples/widgets/checkbox/lv_example_checkbox_1.o] エラー 1
cc: エラー: 認識されないコマンドライン オプション '-Wshift-negative-value'
Makefile:45: ターゲット 'build/obj/lvgl/examples/widgets/chart/lv_example_chart_6.o' のレシピが失敗しました
作成: *** [build/obj/lvgl/examples/widgets/chart/lv_example_chart_6.o] エラー 1
コンパイルを続行できません

2. エラー分析

プロンプトに従ってエラーを分析します。cc: エラーはエラーをプロンプトします。Makefile を開いて、それが gcc コンパイラに属していることを確認します。

20220104214639

認識されないコマンドライン オプション '-Wshift-negative-value' は、コマンドを認識できないことを示すプロンプトを表示するため、分析は GCC のバージョンによるものである必要があります。おそらく、私のバージョンではこのコマンドがサポートされていません。解決策としては、バージョンを変更するか、このコマンドを削除して、正常に実行できるかどうかを確認します。

3. エラー解決

ここではコマンドを削除してコンパイルしてみます。まずgrepを使ってファイルのどの行にコマンドがあるかを調べます。

 grep -n "\-Wshift\-negative\-value" メイクファイル

20220104215405

ファイルを編集し、対応する指示を削除します

vim メイクファイル

20220104215518

プログラムを保存してコンパイルする

20220104215531

コンパイルは成功し、デモは正常に実行できます。

20220104215607

Linux で LVGL エミュレータをコンパイルする際のエラー問題を解決する方法については、これで終わりです。Linux LVGL エミュレータ エラーに関する関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • 独立したAndroidエミュレータを作成する方法
  • Androidエミュレータを素早く作成する方法
  • LVGL PCエミュレータの詳細なインストール手順

<<:  webkit-box-reflect を巧みに使用してさまざまな動的効果を実現する (要約)

>>:  モバイルページで縦画面を強制する方法

推薦する

MySQL 派生テーブル(Derived Table)の簡単な使用例分析

この記事では、例を使用して、MySQL 派生テーブルの簡単な使用方法を説明します。ご参考までに、詳細...

Vue で debouce の手ぶれ補正機能を使用する方法

目次1. 手ぶれ補正機能2. Vueでdebouceの手ぶれ補正機能を使用する1. 手ぶれ補正機能2...

Windows CVE-2019-0708 リモート デスクトップ コード実行脆弱性の再現問題

1. 脆弱性の説明マイクロソフトは2019年5月15日、CVE番号CVE-2019-0708のWin...

HTML テーブル マークアップ チュートリアル (16): タイトルの水平方向の配置属性 ALIGN

デフォルトでは、表のタイトルは水平方向に中央揃えされます。ALIGN 属性を使用して、タイトル テキ...

Vue は Ctrip のカルーセル効果を模倣します (スライディング カルーセル、以下は高度に適応)

まずケースを見てみましょう。vue+swiper を使用して実装します。スライドの高さが異なる場合、...

ナビゲーションデザインと情報アーキテクチャ

<br />ナビゲーションについて話すときは、ほとんどの場合、ナビゲーションがコンテンツ...

jQuery で呼吸カルーセル効果を実現

この記事では、呼吸カルーセル効果を実現するためのjQueryの具体的なコードを参考までに共有します。...

nginx で Vue プロジェクトをデプロイする方法

今日は nginx サーバーを使用するのですが、vue プロジェクトをサーバーにデプロイする必要もあ...

Docker プルタイムアウトの解決策

最近、Docker イメージのプルが非常に不安定です。遅く、タイムアウトすることがよくあります。 x...

シンプルなカレンダー効果を実現する JavaScript コード

この記事では、シンプルなカレンダー効果を実現するためのJavaScriptの具体的なコードを参考まで...

xshellを使用してLinuxサーバーに接続する

xshellを使用してLinuxに接続する利点Windows環境でLinuxを直接操作できるインター...

Linux ディスク領域解放問題の概要

IDC のサーバーの /partition 使用率がいっぱいです。 100% に到達しました!確認し...

HTML テーブル マークアップ チュートリアル (41): テーブル ヘッダーの幅と高さの属性 WIDTH、HEIGHT

デフォルトでは、ヘッダーの幅と高さはコンテンツに応じて自動的に調整されます。ヘッダーの幅と高さを手動...

CSS を使用して 3 列のアダプティブ レイアウト (両側は固定幅、中央はアダプティブ) を実現します。

いわゆる 3 列適応レイアウトとは、両側の幅が固定され、中央のブロックの幅が適応されることを意味しま...

MySQL のデータの偶発的な削除の解決策と kill ステートメントの原則

mysql が誤ってデータを削除しました削除ステートメントを使用して誤ってデータ行を削除する誤ってデ...