问题标签 [fuchsia]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
fuchsia - 无法使用 shell 运行 Fuchsia 组件
所以我正在尝试开始在 Fuchsia 上进行开发,我想让 hello world 组件运行。但是,按照这些步骤对我不起作用。我正在使用在带有 Virtual Box 的 Ubuntu 20.04 VM 上运行的 core.qemu-x64。我已经让模拟器运行fx qemu -N
但fx vdl start -N
对我没有用。
我跑fx serve-updates
了,但它只是输出“发现......”并且永远不会改变。然后我尝试运行fx shell run fuchsia-pkg://fuchsia.com/hello-world-cpp#meta/hello-world-cpp.cmx
,但它显示“未找到设备”。看起来这应该不是问题,因为在 Linux 中,设备查找器应该会自动找到它。无论如何,我尝试按照 MAC 说明并使用fx set-device 127.0.0.1:22
. 这只是让运行命令说“ssh:连接到主机 127.0.0.1 端口 22:连接被拒绝”。我还尝试将设备设置fx qemu -N command
为“fuchsia-####-####-####”输出的节点名,但这只会使运行命令说没有再次找到设备。
我已经验证我实际上有 hello-world 包,fx list-packages hello-world
它按预期输出所有 hello-world 包。
有什么办法可以让shell命令发现设备?或者,我可以直接从 qemu 模拟器运行像 hello-world 组件这样的组件吗?
如果我可以提供任何其他信息,请告诉我。
fuchsia - 无法在 Ubuntu 上启动 Fuchsia 模拟器
我正在尝试Fuchsia OS
在 Fuchsia Emulator 上构建和运行它femu
,但是在等待模拟器启动后,fx
命令存在并显示下面的错误。
我按照谷歌在fuchsia.dev提供的说明,构建成功完成,用于构建操作系统的命令是
随后,我尝试在导致与上述相同错误的headless
模式下运行,我还尝试在没有参数的情况下构建操作系统,但收到相同的错误。fx vdl start -N --headless
--with
日志文件为我们提供了更多详细信息,日志文件的倒数第二行可能很有趣,内容如下:
emu-system-x86_64-headless: network script /etc/qemu-ifdown failed with status 256
我Ubuntu 21.04
在我的机器上使用。
ubuntu-20.04 - 在目录的父级中找不到平台源代码树
使用 $ nano ~/.bash_profile 更新了我的 shell 脚本,添加了以下行 export PATH=~/directory/.jiri_root/bin:$PATH source ~/directory/scripts/fx-env.sh
我遇到的问题是,每当我尝试运行 fx 命令时,我都会收到一条错误消息“在目录的父级中找不到平台源树”。我必须使用 $ fx set product.board 但显示错误。
linux - 错误无法执行忍者。我试图执行“/opt/fuchsia/prebuilt/third_party/ninja/linux-arm64/ninja”
我想用 qemu 和 kvm 在我的 jetson nano(arm64)上模拟 google fuchsia OS。这是我正在阅读的指南:
https://fuchsia.dev/fuchsia-src/get-started/get_fuchsia_source
下面你可以看到完整的日志,包括我发出的所有命令和我得到的回复,直到最后一个是我无法修复的错误:
错误无法执行忍者。我试图执行“/opt/fuchsia/prebuilt/third_party/ninja/linux-arm64/ninja”
rust - 构建紫红色内核锆石时缺少 rust_tools.cipd_version
我正在尝试bringup.qemu-arm64
在我的 Nvidia Jetson Nano 板上构建 Zircon 内核,但我得到:
如何使丢失的回购出现?
android - 如何在 arm64 上构建 Zircon 内核?
尝试按照https://fuchsia.dev/fuchsia-src/development/kernel/getting_started上的说明构建 Zircon 内核失败,因为:缺少 rust_tools.cipd_version whule building fuchsia kernel zircon
构建过程尝试构建/访问 Jiri 未克隆的一些 Rust 内容,因为正如您在https://fuchsia.googlesource.com/integration/+/1b019974586e3a7487cc2cf178605979f74a5500/prebuilts中看到的,
这种依赖性不适用于linux-arm64
.
我不知道为什么不使用 Rust 的 Zircon 内核需要 Rust。我认为这是试图完全建立紫红色,而不是锆石。
锆石更简单,应该只用几个依赖项来构建。
如何在 arm64 主机中仅构建 Zircon?
kernel - Why does Fuchsia OS uses .elf for kernel image?
After building zircon, I get
As you see, it creates a .elf zircon kernel (image
is also a .elf but I don't know what is the difference from zircon.elf).
I've seen ARM kernels in COFF format but not in ELF. Why does Fuchsia's kernel Zircon produces an elf file?
c - Zircon 引导映像 (ZBI) 是否对于引导 Zircon 内核必不可少?
Zircon 内核的内核入口点调用platform_early_init()从 .S 文件中获取 zbi_paddr 然后传递给pdev_init
其中pdev_init负责启动像 uart 这样的驱动程序。
它看起来像驱动程序通过pdev_run_hooks
(在同一个文件上),它遍历 zbi 文件并找到每个驱动程序信息。
所以看起来ZBI对于引导是必不可少的?
我问是因为我编译了锆石内核并得到了
lz@vm:~/fuchsia/out/default/kernel_arm64$ ls gen
image.build-id.stamp kernel.zbi toolchain.ninja zircon.elf.build-id.stamp zircon.elf.map image image.map
obj 锆石。精灵锆石.elf-gdb.py
如您所见,它会产生一个zircon.elf
,理论上可以运行,但我认为 ZBI 信息对于引导至关重要,否则它会恐慌。我对吗?
build - 了解 Fuchsia OS 中的 GN 构建系统,什么是`build_api_module`?
GN 代表生成忍者。它生成构建东西的忍者文件。主文件是BUILD.GN,位于 fuchsia 源代码树的根目录
它包含很多build_api_module
调用:
但是,我不清楚这到底是做什么的。例如,查看它在build/config/build_api_module.gn上的定义:
看起来它只是生成一个文件。
有人可以向我解释最终如何build_api_module("images")
构建所有锆石内核映像吗?