Back to 2006/開発環境

Linux Kernel

準備

  • linux kernel をgit clone
  • linaro gcc binary をget & extract
  • $ sudo apt-get install ia32-libs
  • $ sudo apt-get install u-boot-tools
  • $ apt-get install ccache

make -j

  • 環境変数設定
export ARCH=arm
export CROSS_COMPILE=/cross/gcc-linaro-arm-linux-gnueabihf-4.7-2013.01-20130125_linux/bin/arm-linux-gnueabihf-
  • $ make armadillo800eva_defconfig
  • $ make menuconfig
  • $ make clean && time make -j8 uImage
realusersys
-j0m52.987s6m2.603s0m17.509s
-j160m53.024s6m1.191s0m17.549s
-j120m52.659s5m55.978s0m17.877s
-j80m52.541s5m52.658s0m18.377s
-j41m6.417s3m48.670s0m12.225s
-j21m55.397s3m23.221s0m10.681s
-j13m59.001s3m27.217s0m17.801s

ccache

  • 環境変数設定
export ARCH=arm
export CROSS_COMPILE="ccache /cross/gcc-linaro-arm-linux-gnueabihf-4.7-2013.01-20130125_linux/bin/arm-linux-gnueabihf-"
  • $ make armadillo800eva_defconfig
  • $ make menuconfig
  • $ make clean && time make -j8 uImage
realusersys
-j0m7.306s0m17.777s0m5.264s
-j80m7.398s0m17.697s0m5.100s
-j40m9.134s0m12.789s0m3.440s
-j20m15.354s0m13.533s0m4.200s
-j10m31.617s0m15.865s0m5.340s
$ ccache -s
cache hit (direct)                  4380
cache hit (preprocessed)              15
cache miss                           885
called for link                     1230
called for preprocessing              12
unsupported source language          342
no input file                       1261
files in cache                      2663
cache size                          30.8 Mbytes
max cache size                       5.0 Gbytes

準備

  • mirror
~/aosp/mirror$ repo init -u https://android.googlesource.com/mirror/manifest --mirror
  • ICSとJB
tagnote
ICSandroid-4.0.4_r2.1
JBandroid-4.2.1_r1.2
  • ICS
~/aosp/ICS$ repo init -u ../mirror/platform/manifest.git -b android-4.0.4_r2.1
  • JB
~/aosp/JB$ repo init -u ../mirror/platform/manifest.git -b android-4.2.1_r1.2

やってみる

ICS

CCACHE なし

~/aosp/ICS$ export USE_CCACHE=
~/aosp/ICS$ prebuilt/linux-x86/ccache/ccache -M 50G
~/aosp/ICS$ prebuilt/linux-x86/ccache/ccache -c -C -z
~/aosp/ICS$ source build/envsetup.sh
~/aosp/ICS$ lunch full-eng
~/aosp/ICS$ prebuilt/linux-x86/ccache/ccache -s
cache hit                              0
cache miss                             0
files in cache                         0
cache size                             0 Kbytes
max cache size                      50.0 Gbytes
~/aosp/ICS$ make clean && time make -j4

Install system fs image: out/target/product/generic/system.img

real    48m38.602s
user    187m11.182s
sys     7m24.208s
~/aosp/ICS$ prebuilt/linux-x86/ccache/ccache -s
cache hit                              0
cache miss                             0
files in cache                         0
cache size                             0 Kbytes
max cache size                      50.0 Gbytes
~/aosp/ICS$
CCACHE あり 1周目

~/aosp/ICS$ export USE_CCACHE=1
~/aosp/ICS$ prebuilt/linux-x86/ccache/ccache -M 50G
~/aosp/ICS$ prebuilt/linux-x86/ccache/ccache -c -C -z
~/aosp/ICS$ source build/envsetup.sh
~/aosp/ICS$ lunch full-eng
~/aosp/ICS$ prebuilt/linux-x86/ccache/ccache -s
cache hit                              0
cache miss                             0
files in cache                         0
cache size                             0 Kbytes
max cache size                      50.0 Gbytes
~/aosp/ICS$ make clean && time make -j4

Install system fs image: out/target/product/generic/system.img

real    51m17.155s
user    187m5.310s
sys     7m51.761s
~/aosp/ICS$ prebuilt/linux-x86/ccache/ccache -s
cache hit                            893
cache miss                         14046
called for link                      609
not a C/C++ file                     373
unsupported compiler option           76
files in cache                     28092
cache size                           3.1 Gbytes
max cache size                      50.0 Gbytes
CCACHE あり 2周目
~/aosp/ICS$ make clean && time make -j4

Install system fs image: out/target/product/generic/system.img

real    23m49.014s
user    84m9.364s
sys     3m40.274s
~/aosp/ICS$ prebuilt/linux-x86/ccache/ccache -s
cache hit                          15814
cache miss                         14064
called for link                     1218
not a C/C++ file                     746
unsupported compiler option          152
files in cache                     28128
cache size                           3.1 Gbytes
max cache size                      50.0 Gbytes

ICS -> JB

CCACHE あり
かすりもしていない,,,なぜ?
~/aosp/JB$ prebuilts/misc/linux-x86/ccache/ccache -s
cache hit                          15814
cache miss                         14064
called for link                     1218
not a C/C++ file                     746
unsupported compiler option          152
files in cache                     28128
cache size                           3.1 Gbytes
max cache size                      50.0 Gbytes
~/aosp/JB$ make clean && time make -j4

Install system fs image: out/target/product/generic/system.img

real    64m17.609s
user    222m29.842s
sys     10m31.447s
~/aosp/JB$ prebuilts/misc/linux-x86/ccache/ccache -s
cache hit                          15814
cache miss                         32019
called for link                     1942
not a C/C++ file                    1140
unsupported compiler option          279
files in cache                     64038
cache size                           7.4 Gbytes
max cache size                      50.0 Gbytes

JB

CCACHE あり
Running:  mkyaffs2image -f out/target/product/generic/system out/target/product/generic/obj/PACKAGING/systemimage_intermediates/system.img
Install system fs image: out/target/product/generic/system.img

real    27m43.585s
user    83m16.136s
sys     4m31.169s
~/aosp/JB$ prebuilts/misc/linux-x86/ccache/ccache -s
cache hit                          33735
cache miss                         32053
called for link                     2666
not a C/C++ file                    1534
unsupported compiler option          406
files in cache                     64106
cache size                           7.4 Gbytes
max cache size                      50.0 Gbytes
CCACHE なし

  • a.t.d

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

管理人/副管理人のみ編集できます