Giter Club home page Giter Club logo

tizen_tools's Introduction

tizen_tools

Tizen cross-compilation toolchain for building the Flutter engine.

Generating toolchains

You need a Linux x64 host with Tizen Studio 4.0 or later installed. It is assumed that tizen-studio is installed in the default location (HOME), and the required package (NativeToolchain-Gcc-9.2) is already installed. Run the following commands in this directory to copy required files from tizen-studio to toolchains. Typically, you have to run this only once.

TIZEN_STUDIO=$HOME/tizen-studio

mkdir -p toolchains
cp -r $TIZEN_STUDIO/tools/llvm-10/* toolchains
For arm

for f in $TIZEN_STUDIO/tools/arm-linux-gnueabi-gcc-9.2/bin/arm-linux-*; do
  b=`basename $f`
  cp $f toolchains/bin/armv7l-tizen-${b:4}
done
For arm64 (optional)

Make sure you already have created a sysroot for arm64 (below) before running the following.

for f in $TIZEN_STUDIO/tools/aarch64-linux-gnu-gcc-9.2/bin/aarch64-linux-*; do
  b=`basename $f`
  cp $f toolchains/bin/aarch64-tizen-${b:8}
done

# FIXME: https://github.com/flutter-tizen/tizen_tools/pull/7#discussion_r611339789
ln -s aarch64-tizen-linux-gnu-ld toolchains/bin/ld

# FIXME: This should not be necessary.
cp -r $TIZEN_STUDIO/tools/aarch64-linux-gnu-gcc-9.2/lib/gcc/aarch64-tizen-linux-gnu/9.2.0/*.{o,a} \
  sysroot/arm64/usr/lib
For x86 (optional)

for f in $TIZEN_STUDIO/tools/i586-linux-gnueabi-gcc-9.2/bin/i586-linux-*; do
  b=`basename $f`
  cp $f toolchains/bin/i586-tizen-${b:5}
done

# FIXME: This should not be necessary.
mkdir -p toolchains/lib/gcc
cp -r $TIZEN_STUDIO/tools/i586-linux-gnueabi-gcc-9.2/lib/gcc/i586-tizen-linux-gnueabi \
  toolchains/lib/gcc

Generating a sysroot

Run build-rootfs.py to generate a sysroot for each target architecture. You have to re-generate the sysroot whenever this repo has been updated.

# For arm
sysroot/build-rootfs.py --arch arm

# For arm64 (optional)
sysroot/build-rootfs.py --arch arm64

# For x86 (optional)
sysroot/build-rootfs.py --arch x86

tizen_tools's People

Contributors

swift-kim avatar wonyoungchoi avatar xiaowei-guan avatar bwikbs avatar pkosko avatar pwasowski2 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.