Blog Logo
  • Home
  • SACC2013
  • Categories
  • Tags
  • About
  • Feed

手动编译Chromium OS系统

by Ruanjf — on Chromium linux 26 May 2013

鉴于Google提供的文档存在很多坑,Google向来简约但是文档也简这就不应该了,其实还提供了一份完整的文档巨长无比。因此有了这篇文章主要目的让大家看完后也可以编译Chromium OS

前提条件

  • Ubuntu Linux 12.04 版本切记实用
  • 64的系统(为了编译可以快点)这里提供下载
  • 一个可以使用sudo的账户

下载源码

  • 安装必要的软件

     rjf@rjf-ubuntu:~$sudo apt-get install aptitude
     rjf@rjf-ubuntu:~$sudo aptitude install git-core gitk git-gui subversion curl
    

    安装depot_tools到你想要的目录(第一个坑,git提供的https访问不了不知为啥现改为http)

     rjf@rjf-ubuntu:~/chromiumos$git clone http://chromium.googlesource.com/chromium/tools/depot_tools.git
     rjf@rjf-ubuntu:~$vi ~/.bashrc
    
  • 配置环境

     rjf@rjf-ubuntu:~$vi ~/.bashrc
    

    在其最后添加如下内容到.bashrc

     # depot_tools安装目录
     export PATH="$PATH":/usr/local/depot_tools
     # chromiumos存放目录,最好预留30G以上
     export SOURCE_REPO=${HOME}/chromiumos
     # 后两个选添一个即可想编译32位选择x86-generic、64选择amd64-generic
     export BOARD=x86-generic
     export BOARD=amd64-generic
    

    内容添加完后记得关闭当前shell并打开新的shell进行下面的操作,不然配置不会生效

  • 下载源码 这里需要等上较长时间本来话了两个小时,没事可以看片去了

     rjf@rjf-ubuntu:~$cd ${SOURCE_REPO}
     rjf@rjf-ubuntu:~/chromiumos$repo init -u https://git.chromium.org/chromiumos/manifest.git
     rjf@rjf-ubuntu:~/chromiumos$repo sync
    

编译源码

  • 配置编译环境
rjf@rjf-ubuntu:~/chromiumos$cros_sdk -- ./setup_board --board=${BOARD}
  • 编译包
rjf@rjf-ubuntu:~/chromiumos$cros_sdk -- ./build_packages --board=${BOARD}
  • 编译映像,存放于${SOURCE_REPO}/src/build/images/${BOARD}/latest/chromiumos_image.bin
rjf@rjf-ubuntu:~/chromiumos$cros_sdk -- ./build_image --board=${BOARD}
  • 生成VMware文件与映像存放在同一目录下,对于用虚拟机打开时无网络可在xxx.vmx文件中添加ethernet0.virtualDev = "e1000"。当然也可以选择其他的
rjf@rjf-ubuntu:~/chromiumos$cros_sdk -- ./image_to_vm.sh --board=${BOARD} --format=vmware
  • 生成U盘映像
rjf@rjf-ubuntu:~/chromiumos$cros_sdk -- ./image_to_usb.sh --board=${BOARD}

关键命令整理

sudo apt-get install aptitude
sudo aptitude install git-core gitk git-gui subversion curl
git clone http://chromium.googlesource.com/chromium/tools/depot_tools.git
export PATH="$PATH":/usr/local/depot_tools
export SOURCE_REPO=${HOME}/chromiumos
export BOARD=x86-generic
export BOARD=amd64-generic
cd ${SOURCE_REPO}
repo init -u https://git.chromium.org/chromiumos/manifest.git
repo sync
cros_sdk -- ./setup_board --board=${BOARD}
cros_sdk -- ./build_packages --board=${BOARD}
cros_sdk -- ./build_image --board=${BOARD}
cros_sdk -- ./image_to_vm.sh --board=${BOARD} --format=vmware
cros_sdk -- ./image_to_usb.sh --board=${BOARD}
Ruanjf Author

Ruanjf

ruanjiefeng@gmail.com

是我,这就是我

Comments

comments powered by Disqus
All content copyright Ruanjf © 2020 • All rights reserved.
Proudly published with Jekyll on Tuesday, 05 May 2020 at 05:34 PM UTC