关于操作系统:Fuchsia学习笔记0下载和编译

40次阅读

共计 2289 个字符,预计需要花费 6 分钟才能阅读完成。

下载代码

代码下载, 官网提供的形式

运行脚本

curl -s "https://fuchsia.googlesource.com/fuchsia/+/HEAD/scripts/bootstrap?format=TEXT" | base64 --decode | bash
  1. 创立 fuchsia 目录
  2. 下载代码管理工具 jiri和二进制包管理工具cipd
  3. 引入 jiri 我的项目, 主动运行 jiri update 下载源码

会十分慢, 除非你的代理十分快, 更好的方法是从国内的镜像仓库中下载代码

国内镜像下载的办法

下载 cipd jiri 工具

 mkdir fuchsia && cd fuchsia
 curl --location --create-dirs --output .jiri_root/bin/cipd             https://fuchsia.fsf.org.cn/bootstrap/cipd-linux-amd64
 curl --location --create-dirs --output .jiri_root/bin/jiri             https://fuchsia.fsf.org.cn/bootstrap/jiri-linux-amd64
 chmod +x .jiri_root/bin/jiri .jiri_root/bin/jiri
 export PATH=${PATH}:${PWD}/.jiri_root/bin

下载代码

计划一
mkdir -p build && echo "internal_access = false" >build/cipd.gni
jiri init -keep-git-hooks=true
jiri import -name=integration flower https://fuchsia.fsf.org.cn/git/fuchsia-integration
jiri update -v
echo "have_firmware = false" >zircon/prebuilt/config.gni
计划二

manifest 文件自行从 https://fuchsia.fsf.org.cn/ma… 抉择,一个月以内的文件确保无效。

mkdir -p build && echo "internal_access = false" >build/cipd.gni
jiri init -keep-git-hooks=true
curl --location --output .jiri_manifest https://fuchsia.fsf.org.cn/manifest/fuchsia-20060102.xml
jiri update -v
echo "have_firmware = false" >zircon/prebuilt/config.gni

切换国内镜像

先删除相干文件

rm -rf integration jiri .jiri_manifest .jiri_root

下载 cipd jiri 工具并应用国内镜像,参见下面的教程。

复原官网仓库

 rm -rf integration jiri .jiri_manifest .jiri_root
 curl -s https://fuchsia.googlesource.com/jiri/+/master/scripts/bootstrap_jiri?format=TEXT | base64 --decode | bash -s ${PWD}
 jiri init -keep-git-hooks=true
 jiri import -name=integration flower https://fuchsia.googlesource.com/integration
 jiri update -v

遇到的问题

国内镜像下载某些模块代码的时候回报 404 的谬误, 重试很屡次都不行, 解决办法就是通过国内镜像下载大部分的代码, 而后删除 jiri, 再通过 google 官网下载 jiri 更新代码.

筹备环境

Linux

sudo apt-get install build-essential curl git python unzip

macOS

xcode-select --install
  • 本人应用的 ubuntu20.04 的版本, 之前应用 macOS 在编译的过错中总会报各自诡异的语法错误, 想尝试批改, 始终不行, 最初就放弃, 狐疑有一段时间的版本问题.

编译

fx set workstation.x64 --with //bundles:tests
//build 设置为运行于 x64 平台的 workstation 产品,且将测试程序包也一起进行了编译。fx build  // 编译
xy@xy-NUC8i5BEH:fx list-boards
arm64
as370
c18
chromebook-x64
cleo
*
kirin970
msm8998
msm8x53-som
mt8167s_ref
qemu-arm64
qemu-x64
toulouse
vim2
vim3
vs680
x64
x64-reduced-perf-variation  
xy@xy-NUC8i5BEH:fx list-products  // 查看反对的产品
bringup // 最小零碎,用于底层性能的调试,比方 zicron kernel 和板级 driver 的配置
core // 除 bringup 之外,新增一些零碎服务,蕴含网络性能、OTA 降级等
terminal // 蕴含简略的图形界面和 shell terminal
workstation // 通用的开发环境,蕴含 high level feature 和 UI

大略编译 1,2 个小时

运行

fx emu -N
fx emu --headless// 禁用图形界面
// 图形节目显示会有一些问题,google 查了以下也每找到解决的方法,临时先就这样了。

正文完
 0