Tizen开发环境之SBS (Scratchbox Build System)搭建

1、什么是SBS(Scratchbox Build System)

SBS 是基于Scratchbox2 的一个Tizen开发构建系统。使用SBS,你能够在一个轻量级的命令行界面快速创建Tizen平台开发所需的一切。您能够下载源代码,并使用SBS构建它。 SBS还支持交叉调试环境和建立设备映像, SBS支持ARM和x86架构。
html

Scratchbox是构建、配置Linux软件和整个Linux发行版的编译环境。Scratchbox的基本思路是为开发者提供的开发环境看起来像目标环境同样。如用来在x86平台编译运行在arm平台上的Linux系统等。
git

在 Scratchbox里面, 有个很是特殊的东西:sandbox(沙盒), 就是这个东西提供一些必要的工具,同时把你的开发同外面真实的Linux 系统隔离开来。Scratchbox的另一个用处是:交叉编译,你能够在Scratchbox里面编译出能直接运行在target设备上的二进制文件。
sql

Scratchbox 这个名字来源于: “Linux from scratch” + “chroot jail”, 投入监狱(一个盒子内)。这能够告诉咱们一些信息:当咱们工做于Scratchbox里面时,你所运行的程序是在一个改变了根目录的环境下运行的。在 Linux系统中,改变一个进程所能看见的路径是能够作到的。Scratchbox正是利用了这一点,在启动时,就把它的根目录切换到其余目录了,而再也不 指向它的真实根目录了。这也是隔离技术所使用的部分伎俩。正由于此,这个新的环境就叫作沙盒了,你在这个隔离的盒子里玩些危险的东西也不会对真实的环境造 成危害。隔离技术还使用了另一个技术:转移(经过使用LD_PRELOAD, 由LD_PRELOAD指定的共享库优于其余共享库加载)windows

Scratchbox由哪些特性呢?架构

  • 它是sandbox的具体实现软件包,sandbox的主要目的就是为了隔离
  • 含有容易使用的交叉编译工具
  • 支持多个开发者使用同一个开发环境
  • 支持为每一个开发人员单独配置
  • 能运行本来运行在硬件上的目标程序,经过一个机制:sbrsh实现
  • 能过在host上运行非本地的二进制代码,经过使用Qemu

在 上面这些主要的features中,能利用来开发程序的包已经安装在Scratchbox环境中了,Scratchbox同时也集成了Debian包管 理,所以,你能够在Scratchbox里面为不一样的目标发布软件包(相似于windows的 .msi文件,Fedora的 .rpm文件)。经过使用标准的Debian包管理工具,你能够经过internet直接安装你须要的一些开发包。dom

Internet Tablet产品也使用了相似的包管理,这就意味着使用Scratchbox编译的包能够直接安装到实际的设备中。ide

Scratchbox 组件:工具

在开始安装Scratchbox以前,咱们先了解一些Scratchbox中使用的一些术语,而且从如今开始,咱们把Scratchbox简称为sbox.开发工具

  • core package:核心包,这个包中含有实现sbox的核心工具
  • libs package:库文件包,这个包含有core包运行所须要的库文件
  • devkit:开发工具包,含全部sbox所须要的附加工具,咱们主要关心4个devkits. 后面会再介绍。
  • toolchain:工具链,像编译器,链接器等等。
  • target:目标,这里指咱们当前使用的工具链和配置。一个目标使用特定的工具链,而且具备一个文件系统。你能够有不一样的目标,甚至于这些目标使用相同的工具链。这就很方便于测试不一样的目标。注意:sbox目标并不能等同于实际的物理设备。
  • rootstrap: rootstrap是目标根文件系统,用于知足基本的开发。Rootstraps一般特定开发目标所须要的基本文件,不过有时候它的做用仅仅是引导。通常状况下,对嵌入式Linux开发环境,这个rootstrap通常包含在所提供的SDK中,如Tizen的SDK。

2、SBS安装
测试

Tizen开发环境SBS的安装须要如下条件:

  • Ubuntu (Debian) Linux system (10.04 or higher) 32-bit
  • git-core
  • Tizen SDK

 安装git:

  1. $ sudo apt-get install git-core
  2. $ git config --global user.name "your name"
    $ git config --global user.email your_email@domain.com

 安装sdk:http://itviewer.blog.51cto.com/3775200/761456

 安装SBS:

一、安装依赖包

   
   
   
   
  1. sudo apt-get update
sudo apt-get install dpkg-dev pkg-config uuid-dev cpp gcc gcc-multilib libarchive-dev liblzo2-dev zlib1g-dev libxml2-dev automake autoconf realpath

二、安装SBS

     首先须要从官网下载并安装

   
   
   
   
  1. cd sbs 
  2. ./install-sbs 
git clone git://review.tizen.org/tools/sbs

安装完成以后,须要对目标环境初始化,假如咱们的目标平台是 i386 ,则执行:

   
   
   
   
  1. ~/sbs-install/bin/sbs -A i386 -c 

目标平台是ARM:

  
  
  
  
  1. ~/sbs-install/bin/sbs -c 

该过程须要必定时间。

原文安装及使用见:https://source.tizen.org/platform/development-sbs/installing-sbs

相关文章
相关标签/搜索