type
status
date
slug
summary
tags
category
icon
password
Flutter Engine的编译以及源码阅读其实挺简单的,只要按照官方文档的步骤来,一般都不会有什么问题.这里记录一下编译的流程,以及源码查看的一些配置和问题.

下载

  1. 下载depot_tools,并配置环境
    1. Fork https://github.com/flutter/engine 到自己的账号下
    1. 根目录创建.gclient文件
      1. 执行 gclient sync
      1. 通过cd src/flutter进入flutter目录下,并执行git remote add upstream git@github.com:flutter/engine.git关联仓库

      编译(Android)

      1. src/flutter下执行git pull upstream master同步最新代码
      1. gclient sync更新依赖
      1. ./flutter/tools/gn --android --unoptimized --android-cpu=arm64 生成构建文件
      1. ninja -C out/android_debug_unopt_arm64 编译

      VSCode 配置

      • C/CPP
        • 编译完成之后,在out文件下会生成一个compile_commands.json,将这个文件添加到c_cpp_properties.json配置文件中
      • Java
        • 安装两个插件vscjava.vscode-java-packvscjava.vscode-java-dependency
          配置JDK,但是目前要求版本最低为JDK11

      问题以及解决办法

      • C/CPP代码头文件总是报错,显示红色波浪线
      notion image
      调试flutter_toolsFlutter-Timeline
      Loading...