要約
sony/flutter-embedded-linux
を Debian 10 で使ってみた。
参考資料
- Debian / Ubuntu上のwaylandとwestonで最小限のGUIを構築する - Qiita
- flutter-embedded-linux/doc at master · sony/flutter-embedded-linux · GitHub
- Build error in flutter linux · Issue #59890 · flutter/flutter · GitHub
- Unclear Linux instructions in doctor · Issue #64230 · flutter/flutter · GitHub
環境
- Oracle VM VirtualBox: 6.1
- Linux ディストリビューション: Debian 10.9
- GNOME デスクトップ環境インストール済
パッケージインストール
いくつかいらないパッケージもあるかもだけど
$ sudo apt -y install libnss-resolve libnss-systemd dbus-user-session policykit-1 $ sudo apt -y install weston xwayland xfonts-base fonts-vlgothic fonts-ipafont poppler-data $ sudo apt -y install vim $ sudo apt -y install git curl virtualenv $ sudo apt -y install clang cmake build-essential pkg-config libegl1-mesa-dev libxkbcommon-dev libgles2-mesa-dev $ sudo apt -y install libwayland-dev wayland-protocols $ sudo apt -y install libgtk-3-dev ninja-build $ sudo apt -y install python2
weston.ini
今回はもしかしたら必要ないかも?
[core] xwayland=true require-input=false backend=drm-backend.so modules=systemd-notify.so use-pixman=true [keyboard] keymap_layout=jp [shell] #client=/usr/bin/weston-terminal locking=false animation=fade allow-zap=true
Flutter Engine embedder のビルド
ビルドツールのインストール
$ cd ~ $ git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git $ export PATH=$PATH:~/depot_tools $ virtualenv .env -p python2 $ source .env/bin/activate
.gclient ファイルの作成
最新バージョンを使用
solutions = [ { "managed": False, "name": "src/flutter", "url": "https://github.com/flutter/engine.git", "custom_deps": {}, "deps_file": "DEPS", "safesync_url": "", }, ]
ソースファイルを取得
$ cd ~ $ gclient sync $ cd src $ ./flutter/tools/gn --runtime-mode release --embedder-for-target $ ninja -C out/host_release $ cp ~/src/out/host_release/libflutter_engine.so /usr/lib
flutter-embedded-linux のビルド
$ cd ~ $ git clone https://github.com/sony/flutter-embedded-linux $ cd flutter-embedded-linux $ mkdir build $ cd build $ cp ~/src/out/host_release/libflutter_engine.so . $ cmake -DUSER_PROJECT_PATH=examples/flutter-wayland-client .. $ cmake --build .
Flutter アプリのビルド
Flutter のインストール
$ cd ~ $ git clone https://github.com/flutter/flutter $ sudo mv flutter /opt/ $ export PATH=$PATH:/opt/flutter/bin $ flutter config --enable-linux-desktop $ flutter doctor
Flutter アプリのビルド
$ cd ~/flutter-embedded-linux $ flutter create sample $ cd sample/ $ flutter build linux $ cd ..
Flutter アプリの実行
$ cd ~/flutter-embedded-linux/build $ ./flutter-client ./sample/build/linux/x64/release/bundle
起動画面
まとめ
今回は Debian 10 で sony/flutter-embedded-linux
を実行してみました。githubのREADMEに従ってやれば基本的には詰まることなく表示できました。