Armadilloフォーラム

atmark-distのコンフィグレーション make時のエラーについて

mato_developer

2019年5月16日 9時21分

上園です。いつもお世話になっております。

atmark-distのコンフィグレーションについて質問があります。

dep(依存関係の記載)をmakeした際にエラーが発生していますので、
お手数ですが、ご教示いただきたく存じます。

atmark-dist開発者ガイド(Version 1.0.11)の「3. デフォルトイメージのビルド」に従い、
「make config」を実行すると正常に終了しますが、最後に以下のメッセージが表示されます。

*** End of Linux kernel configuration.
*** Check the top-level Makefile for additional configuration.
*** Next, you must run 'make dep'.

このメッセージが開発者ガイドに載っていませんが、メッセージに従い「make dep」を
実行してみたところ、最後のワーニングで「make dep is unnecessary now」が表示されました。

このメッセージだと、個別にdeb用コンフィギュレーションを実行する必要がない、
という意味だと認識しました。

その後で、「3.6まとめ」に記載されていた「make dep all」も実行してみたところ、
「ターゲット’silentoldconfig'のレシピで失敗しました」というメッセージが表示され
makeエラーとなります。

「make dep」、および「make dep all」の実行結果のログを添付しましたので、
ご参考にしてください。

以上、よろしくお願いいたします。

ファイル ファイルの説明
errlog.txt
コメント

上園です。

環境等の記載をしていませんでしたので、追記します。

・ディストリビューション : atmark-dist-20180330
・カーネル : linux-3.4-at12
・OS:Debian GNU/Linux 9
(ATDE5は使用していません)

以上、よろしくお願いいたします。

上園様

お世話になります。宮本と申します。
明確な回答ではないのですが、以下の内容が同事象ではないかと思われます。

https://users.atmark-techno.com/forum/armadillo/783
https://users.atmark-techno.com/forum/armadillo/758

どちらもシンボリックリンクが起因しているようです。

以上、参考になりましたら幸いです。

宮本様

お世話になっております、上園です。
ご指摘いただきまして、誠にありがとうございます。

現象としては、以下の内容と似ています。

 https://users.atmark-techno.com/forum/armadillo/758

ご指摘があったシンボリックリンクですが、当方の環境で確認したところ設定されていました。
念のためシンボリックリンクを削除と再作成してみましたが、エラー発生内容に変化ありませんでした。

シンボリックリンクの設定確認と実行ログをアップロードします。

こちらでも引き続き調査いたします。

ファイル ファイルの説明
errlog2.txt

上園様

お世話になっております。宮本です。
errlog2.txtを見たところ、「make config」されているようですが、
「make menuconfig」ではないでしょうか。

atmark-dist開発者ガイドの資料が確認できなかったので違うかもしれませんが、
a440のソフトウェアマニュアルの第7章ビルド手順では、
ソースアーカイブの展開、シンボリックリンクの作成のあとは
「make menuconfig」されているようです。

以上です。よろしくお願いします。

宮本様

お世話になっております、上園です。

> errlog2.txtを見たところ、「make config」されているようですが、
> 「make menuconfig」ではないでしょうか。
>

ご指摘の件ですが、「make menuconfig」だとメニュー画面が起動しない場合がありました。
(Atmark Dist,linuxカーネル共に起こります)

そのためやむを得ず「make config」でメニュー画面の設定をコマンドラインで行いました。
これを実行すると、「make menuconfig」の実行が可能となります。

ご迷惑をおかけして申し訳ありませんでした。

上園です。

個人的に調査したのですが、原因が判明しなかったので、Atmark Dist とLinux カーネルをダウンロードしなおして
別のフォルダに展開、シンボリックリンク設定、makeを実行したのですが、
前回と異なるエラーが発生しました。

エラー内容は以下の通りです。

----------------------------------------------------------------------------------
tuser@cb200-dev-ts:~/atmark-dist$make
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -C linux-3.x || exit 1
make[1]: ディレクトリ '/home/tuser/linux-3.14-at12' に入ります
scripts/kconfig/conf --silentoldconfig Kconfig
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
make[2]: 'include/generated/mach-types.h' は更新済みです.
CC kernel/bounds.s
In file included from include/linux/compiler.h:54:0,
from include/uapi/linux/stddef.h:1,
from include/linux/stddef.h:4,
from /home/tuser/linux-3.14-at12/include/uapi/linux/posix_types.h:4,
from include/uapi/linux/types.h:13,
from include/linux/types.h:5,
from include/linux/page-flags.h:8,
from kernel/bounds.c:9:
include/linux/compiler-gcc.h:106:30: fatal error: linux/compiler-gcc6.h: そのようなファイルやディレクトリはありません
#include gcc_header(__GNUC__)
^
compilation terminated.
/home/tuser/linux-3.14-at12/./Kbuild:35: ターゲット 'kernel/bounds.s' のレシピで失敗しました
make[2]: *** [kernel/bounds.s] エラー 1
Makefile:886: ターゲット 'prepare0' のレシピで失敗しました
make[1]: *** [prepare0] エラー 2
make[1]: ディレクトリ '/home/tuser/linux-3.14-at12' から出ます
Makefile:298: ターゲット 'linux' のレシピで失敗しました
make: *** [linux] エラー 1
tuser@cb200-dev-ts:~/atmark-dist$

-----------------------------------------------------------------------------

「linux/ccompiler-gcc6.h」が無い、ということでしたが、指定されたフォルダには
ccompiler-gcc6.hというファイルはありませんでした。

フォルダの内容は以下の通りです。

tuser@cb200-dev-ts:~/linux-3.14-at12/include/linux$ ls com*.h
com20020.h compaction.h compat.h compiler-gcc.h compiler-gcc3.h compiler-gcc4.h compiler-gcc5.h compiler-intel.h compiler.h completion.h component.h

このような現象が発生された方がおりましたら、解決方法等のご教示をお願いします。

別スレッドにすべきだと思いますが、とりあえずこちらに投稿します。

以上、よろしくお願いいたします。