0

Nexus S で実行するには、Android のカーネルをカスタマイズする必要があります。

そこで、「remotes/origin/android-samsung-2.6.35-gingerbread」というブランチ名でカーネルをダウンロードします

ここの指示に従ってみましたhttp://source.android.com/source/building-kernels.htmlカーネルを構築します。これを行うには、クロス コンパイル ツールが必要です。ターゲットの Android ソース コード バージョン android-2.3.5_r1 には、そのようなツールはありません (prebuilts/ フォルダーはありません)。そこで、バージョン 4.1.2 をダウンロードし、ツールをパス prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin としてセットアップしました。次に、カーネルをビルドしようとしましたが、次のエラーが発生しました。

[root@localhost samsung]# make 
scripts/kconfig/conf -s arch/arm/Kconfig
  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h' is up to date.
  CALL    scripts/checksyscalls.sh
  CHK     include/generated/compile.h
  CC      drivers/gpu/pvr/osfunc.o
In file included from drivers/gpu/pvr/osfunc.c:39:0:
include/linux/pagemap.h: In function 'fault_in_pages_readable':
include/linux/pagemap.h:415:16: error: variable 'c' set but not used [-Werror=unused-but-set-variable]
drivers/gpu/pvr/osfunc.c: In function 'OSAccessOK':
drivers/gpu/pvr/osfunc.c:2144:13: error: variable 'linuxType' set but not used [-Werror=unused-but-set-variable]
cc1: all warnings being treated as errors

make[3]: *** [drivers/gpu/pvr/osfunc.o] Error 1
make[2]: *** [drivers/gpu/pvr] Error 2
make[1]: *** [drivers/gpu] Error 2
make: *** [drivers] Error 2

「エラーとして扱われるすべての警告」を無効にして解決する必要がありますか? それとも、より良いツールチェーンが必要ですか?

PS: master ブランチとブランチ 4.2 のツール チェーンは、私には使用できません。私のLinuxは32ビットですが、それらは64ビットOS用に作られているように見えるためです

4

1 に答える 1

0

\prebuilts フォルダー内のツールチェーンを指す ARCH=ARM および TOOLCHAIN のパスはありますか?

make ARCH=ARM TOOLCHAIN=\<homeofAOSP>\prebuilt\.. herring_defconfig

make cleanする前にmake

于 2014-10-24T22:42:11.693 に答える