美文网首页Dart
Fuchsia在ubuntu kylin上的编译运行。

Fuchsia在ubuntu kylin上的编译运行。

作者: e143d404c549 | 来源:发表于2016-08-30 22:06 被阅读596次

Fuchsia的简介就不写了。想看的小伙伴看看历史文章。

注意,由于整个项目是在googlesource上进行clone,所以你懂得你必须翻过GFW

直接干货!

1.安装工具,怎个编译工作需要使用到

golang git build-essential curl
在ubuntu 上使用apt-get 安装

sudo apt-get install golang git-all build-essential curl

2.拷贝fuchsia整个项目到本地

2.1)根据官方给出的方式进行拷贝

curl -s https://raw.githubusercontent.com/fuchsia-mirror/jiri/master/scripts/bootstrap_jiri | bash -s fuchsia
cd fuchsia
export PATH=`pwd`/.jiri_root/scripts:$PATH
jiri import fuchsia https://fuchsia.googlesource.com/manifest
jiri update

这里需要下载很久,很久,真的很久-_-,愁啊
2.2)我已经给大家打包好了整个项目,直接在百度云上进行下载
下载完成后将文件解压

3.构建整个fuchsia

利用官方给出的命令

./packages/gn/gen.py
./buildtools/ninja -C out/debug-x86-64

如果在出现
Cannot find XXX/fuchsia/buildtools/linux64/gn (ps:xxx代表你的fuchsia这个文件存放的路径)
Did you run update.sh?
这样的语句,那么你需要对整个系统进行手动更新,
我仔细看了看buildtools的自述文件,发现这个文件下存放的全是编译工具的哈希码,然后说jiri会自动更新,然而并没有,所以自己手动更新
切换到buildtools目录下

./update.sh

漫长的等待
等到下载完成后再次运行

./packages/gn/gen.py
./buildtools/ninja -C out/debug-x86-64

然后呀,又是漫长的等待,一共有5000多个编译项目,如果你是实体机器的系统速度估计快点,我把虚拟机的核心调到了2稍微好一点不过还是很慢,编译出来的文件有几个G存放在fuchsia目录下的out/debug-x86-64目录下
如果出现

ninja: Entering directory `out/debug-x86-64'
ninja: error: '../../mojo/public/tools/bindings/mojom_tool/bin/linux64/mojom', needed by 'obj/mojo/public/interfaces/application/application__generator.inputdeps.stamp', missing and no known rule to make it

这样的错误,这里是/mojo/public/哈希码的工具没有被下载,所以运行fuchsis/mojo/public下的update.sh,又是漫长的等待

捕获.JPG

等下载完所以东西后,正式编译开始了,一共5127个文件
漫长的等待

4.运行内核,使用如下命令生成.bootfs文件

cd magenta
./scripts/run-magenta-x86-64 -x ../out/debug-x86-64/user.bootfs
./scripts/run-magenta-arm64 -x ../out/debug-aarch64/user.bootfs

命令执行完成后会自动进入系统。到此Fuchsia的编译及运行全部完成。

由于每人机器环境不一样,这将会导致各种各样的问题出现,所以遇到问题看看自述文件,这将会有助于你解决问题,欢迎大家关注微信号:fuchsiaLearner

Fuchsia开发:

相关文章

网友评论

本文标题:Fuchsia在ubuntu kylin上的编译运行。

本文链接:https://www.haomeiwen.com/subject/edcqettx.html