LinuxカーネルとSVNバージョン間の競合の解決策

LinuxカーネルとSVNバージョン間の競合の解決策

現象

システムは Linux システムカーネルを正常にコンパイルできましたが、SVN をインストールした後、カーネルのコンパイルに失敗しました。

include/linux/version.h をチェックする
 CHK include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h'は最新です。
 CALL スクリプト/checksyscalls.sh
 include/generated/compile.h をチェックする
gcc: ディレクトリ: そのようなファイルまたはディレクトリはありません
gcc: ディレクトリ": そのようなファイルまたはディレクトリはありません
<コマンドライン>:0: 警告: 終了文字 " がありません
gcc: ディレクトリ: そのようなファイルまたはディレクトリはありません
gcc: ディレクトリ": そのようなファイルまたはディレクトリはありません
<コマンドライン>:0: 警告: 終了文字 " がありません
gcc: ディレクトリ: そのようなファイルまたはディレクトリはありません
gcc: ディレクトリ": そのようなファイルまたはディレクトリはありません
<コマンドライン>:0: 警告: 終了文字 " がありません
 CC ドライバー/gpu/mali/mali/common/mali_kernel_core.o

arm-eabi-gcc: エラー: ": そのようなファイルまたはディレクトリはありません
make[4]: *** [drivers/gpu/mali/mali/common/mali_kernel_core.o] エラー1
make[3]: *** [drivers/gpu/mali/mali] エラー2
make[2]: *** [drivers/gpu/mali] エラー2
make[1]: *** [ドライバー/GPU] エラー2
make: *** [ドライバー] エラー 2
make: *** 未完了のタスクを待機しています....

原因分析

drivers/gpu/mali/ump/Makefile.common と drivers/gpu/mali/mali/Makefile に SVN_REV:=xxxx に関する記述があることがわかりました。通常、SVN_REV:= は空です。SVN バージョンを確認すると、SVN_REV:= に値があり、スクリプトが間違ったブランチに入る原因になります。

回避策

両方のファイルの SVN_REV 値を空の "" に割り当てるだけです。

ドライバー/gpu/mali/ump/Makefile.common:

 16 # Subversion リビジョン番号を取得します。svn 情報が利用できない場合は 0000 に戻ります。
 17 #SVN_REV:=$(shell ((svnversion | grep -qv exported && echo -n 'リビジョン: ' && svnversion) || git svn info | sed -e 's/$$$$/M/' | grep '^リビジョン: ' || echo ${MALI_RELEASE_NAME}) 2>/dev/null | sed -e 's/^リビジョン: //')
 19 SVN_REV:=""

ドライバー/gpu/mali/mali/Makefile:

117 #SVN_REV := $(shell (cd $(DRIVER_DIR); (svnversion | grep -qv exported && svnversion) || git svn info | grep '^Revision: '| sed -e 's/ ^Revision: //' ) 2>/dev/null )
119 SVN_REV := ""

要約する

Linux カーネルと SVN バージョン間の競合の解決に関するこの記事はこれで終わりです。Linux カーネルと SVN バージョン間の競合の解決の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Linux システムに gcc と kernel-devel をインストールする方法
  • カーネルが提供するインターフェースを使用してプロセス番号(pid)を出力します。
  • Linuxカーネルで関数呼び出しスタックを出力する方法についての簡単な説明
  • Linuxカーネルで関数ポインタに対応する関数名を出力する方法
  • NEONを使用してカーネル状態のアルゴリズムを高速化する方法を学ぶ
  • Ubuntu の kvm コマンドラインで 64 ビット Ubuntu をインストールするときに発生する「Ubuntu ツリーの hvm カーネルが見つかりません。」という問題の分析
  • CentOS7 カーネル カーネル5.0 バージョンアップグレード
  • Linuxカーネルの浮動小数点演算のサポートに関する簡単な説明

<<:  Windows 7 での MySQL 8.0.18 の導入とインストールのチュートリアル

>>:  Vue 開発ツリー構造コンポーネント (コンポーネント再帰)

推薦する

Alpine Dockerイメージフォント問題解決操作

1. フォントを実行し、フォント フォルダーを開いて、使用するフォント ファイルを見つけます。 2....

IE9 のネイティブ ページ互換性の問題に対する解決策についての簡単な説明

序文最近、クライアントのネイティブページを引き継ぎました。顧客は、ページが IE9 以降のバージョン...

Vue 要素と Nuxt の使用に関するヒントを共有する

1. 要素時間選択提出フォーマット変換例えば 2018年9月7日金曜日 00:00:00 GMT+0...

MySQL監視ツールmysql-monitorの詳細な説明

1. 概要mysql-monitor MYSQL 監視ツール、最適化ツール、1 つの Java Sp...

実用的な情報が満載のJavaScript Webフォーム機能通信

1. はじめに先ほど、フロントエンドの表示の問題について説明しました。では、前のコンテンツに戻って、...

Vue はカードフリップカルーセル表示を実装します

Vueカードのフリップカルーセル表示、フリップ時にデータを切り替えながら、参考までに、具体的な内容は...

より人気がありクリエイティブなダーク背景のウェブデザインの例

暗い背景スタイルのページ デザインは非常に人気があり、シックでエレガント、そして非常にクリエイティブ...

Linux の MySQL でリモート接続を承認する方法

注意: 他のマシン (IP) は、承認なしではクライアント経由で MySQL データベースに接続でき...

組み込み Linux で QT アプリケーションを再起動する簡単な方法 (QT4.8 qws ベース)

アプリケーション ソフトウェアには通常、次のようなビジネス要件があります。新しいバージョンの APP...

Linux の crontab タスク スケジューリングの簡単な分析

1. スケジュールタスクを作成する命令crontab -eは現在のユーザーの編集インターフェースに入...

JavaScript 状態コンテナ Redux の詳細な説明

目次1. Reduxを選ぶ理由2. Reduxデータフロー3つの原則4. Reduxソースコード分析...

Vue での keepAlive の使用例の詳細な説明

開発においては、一覧から詳細ページにジャンプし、また詳細ページに戻る際に一覧ページの状態(スクロール...

CSS と Bootstrap アイコンを使用して、上下にジャンプするインジケーター矢印のアニメーション効果を作成します。

ページが非常に長い場合は、下にさらにコンテンツがあることをユーザーに知らせるために矢印が必要になるこ...

Docker Tomcat のアクセス インターフェイスが表示されないのはなぜですか?

質問:オリジン サーバーはターゲット リソースの表現を見つけることができないか、既存の表現を公開した...

HTML テーブルの行間および列間の操作 (rowspan、colspan)

一般的に、<td> 要素の colspan 属性はセルの列間操作を実装するために使用され...