可以同时针对 Fuchsia 和 Linux 构建 Escher。针对 Linux 进行构建非常有用,因为它允许使用 Fuchsia 上尚未提供的 Vulkan 开发工具。
专为 Fuchsia 打造
Escher 本身是任何包含风景的 Fuchsia 版本(即针对带屏幕的设备的任何版本)的一部分。Escher 的示例和测试是通过将 //src/ui/examples/escher
和 //src/ui/lib/escher:escher_tests
添加到 fx set
调用构建的。
针对 Linux 进行构建
Escher 也可以在 Linux 上进行构建。为此,您需要:
安装 build 依赖项:
sudo apt install libxinerama-dev libxrandr-dev libxcursor-dev libx11-xcb-dev libx11-dev mesa-common-dev
安装支持 Vulkan 的 GPU 驱动程序:
NVIDIA:版本 >= 367.35
sudo apt install nvidia-driver
Intel:Mesa >= 12.0
sudo apt install mesa-vulkan-drivers
设置
VK_LAYER_PATH
和LD_LIBRARY_PATH
环境变量。在这里,我们将使用 Vulkan 层 和加载器:export VULKAN_SDK=$FUCHSIA_DIR/prebuilt/third_party/vulkansdk/linux/x86_64 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$VULKAN_SDK/lib export VK_LAYER_PATH=$VULKAN_SDK/etc/vulkan/explicit_layer.d
指定您想要构建 Escher 示例和单元测试:
cd $FUCHSIA_DIR fx set terminal.x64 --with='//src/ui/examples/escher,//src/ui/lib/escher:escher_tests'
如需了解如何设置
fx
工具,请参阅使用入门。上面的命令行只是一个示例。
每次要重新构建并运行
waterfall
示例时,都执行以下操作:fx build host_x64/waterfall && out/default/host_x64/waterfall
Escher 单元测试的构建和运行方式类似:
fx build host_x64/escher_unittests && out/default/host_x64/escher_unittests fx build host_x64/escher_renderer_tests && out/default/host_x64/escher_renderer_tests