Skip to content
This repository was archived by the owner on Sep 15, 2022. It is now read-only.

Building

Michael Thomsen edited this page Sep 16, 2015 · 14 revisions

Building Fletch (Mac and Linux only)

Prerequisites

Getting the Sources

mkdir fletch-repo
cd fletch-repo

One of three possible options:

  1. You're a committer on the dart-lang project, run:

gclient config git@github.com:dart-lang/fletch.git

  1. You're planning to contribute to Fletch. In that case use, fork it on GitHub and run:

gclient config <URL>

where <URL> is the SSH clone URL from GitHub.

  1. You just want to checkout Fletch and build it:

gclient config https://github.com/dart-lang/fletch.git

Then use gclient to create a local clone:

gclient sync
cd fletch

Building Fletch

After getting the sources, build Fletch by running:

ninja -C out/DebugIA32Clang

Cross-compiling for ARM (Linux only, issue #127)

After getting the sources, build Fletch by running:

ninja -C out/DebugXARM

For Ubuntu 14.04.1 LTS (Trusty Tahr), you need to install the following packages to be able to cross-compile:

  • linux-libc-dev:i386 1
  • gcc-4.8-arm-linux-gnueabihf
  • g++-4.8-arm-linux-gnueabihf

Install them by running:

sudo apt-get install linux-libc-dev:i386 gcc-4.8-arm-linux-gnueabihf g++-4.8-arm-linux-gnueabihf

Testing Fletch

After building Fletch, you can test Fletch by running:

tools/test.py

Contributions

If you plan on contributing to Fletch, we encourage you to fork the repository on GitHub.

Details

Fletch uses the Chromium gclient tool for managing dependencies and the ninja build system for building. It only works on Mac and Linux at the moment.

Footnotes

1: When installing gcc-4.8-arm-linux-gnueabihf and g++-4.8-arm-linux-gnueabihf on Ubuntu, apt-get will uninstall gcc-multilib and g++-multilib. Unfortunately, this breaks cross-compiling IA32 on X64, so one needs to install the header files for IA32 (i386).

Clone this wiki locally