Escher 构建说明

可以同时针对 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_PATHLD_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