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 開発ツリー構造コンポーネント (コンポーネント再帰)

推薦する

Linux で TCP 接続の最大数をテストする方法

序文TCP サーバの最大同時接続数に関して、「ポート番号の上限が 65535 であるため、TCP サ...

HTML(CSSスタイル仕様)を読む必要があります

CSS スタイル仕様1. クラスセレクター2. タグセレクター3. IDセレクター4. CSSスタイ...

mysql インストーラ コミュニティ 8.0.16.0 のインストールと構成のグラフィック チュートリアル

mysqlインストーラコミュニティ8.0.16.0インストールグラフィックチュートリアル、参考までに...

CocosCreatorのホットアップデートの包括的な説明

目次序文ホットチェンジとはCocos Hot アップデートの概要マニフェストプロジェクトリソースとゲ...

複数のサーバーにNginxリバースプロキシを実装する方法

Nginx は複数のサーバーをリバース プロキシします。つまり、nginx に異なるリクエストを送信...

サイバーパンクスタイルのボタンを実現するためのHTML+CSS

まず効果を見てみましょう: 序文:このアイデアは、Bilibili のアップロード者 Steven ...

MySql における特殊演算子の使用の概要

序文MySQL には次の 4 種類の演算子があります。算術演算子比較演算子論理演算子ビット演算子これ...

React-vscode で jsx 構文を使用する際の問題と解決策

問題の説明プラグインをインストールした後、ES7 React/Redux/GraphQL/React...

H5ゲームをnginxサーバーにデプロイする方法の詳細な説明

自己学習型ゲーム開発の道において、最も充実した瞬間は、自分でミニゲームを作り、友達と共有して試しにプ...

CSSはリストのスタイルを設定し、ナビゲーションメニューの実装コードを作成します。

1. リストシンボルを設定するlist-style-type: attribute; //リストの...

HTML 基本構造_Powernode Java アカデミー

多くの場合、Web ページ開発を学ぶときに最初に印象に残るのは、html または htm サフィック...

純粋な CSS3+DIV で小さな三角形の境界線効果を実現するためのサンプル コード

具体的なコードは次のとおりです。 HTMLコードは次のとおりです <div class=&qu...

Dockerfile における ENV 命令の具体的な使用法の詳細な説明

1. Dockerfile 内の ENV 命令は、イメージの環境変数を定義するために使用されます。次...

Ubuntu 18.04 に opencv 3.2.0 をインストールするためのソリューション

opencv.zip をダウンロード依存関係を事前にインストールします。まずダウンロードソースを更新...

MySQL 入門 - SQL 実行プロセス

目次1. プロセス2. コアアーキテクチャ2.1 サーバー層の基本コンポーネントの紹介3. ステート...