喜多多 发表于 2013-6-9 21:57:04

下载泰泽tizen源码图文教程

当前tizen发布的最新源码版本是2.1,本文将以图文教程讲述如何下载tizen源码,关于如何编译后述文章将讲解。
1 注册及设置gerrit
1.1注册邮箱
首先打开https://source.tizen.org/,在右上角点击注册一个你的用户,成功注册好后,再点击https://review.tizen.org/gerrit登陆gerrit,将出现如下界面:
http://img.blog.csdn.net/20130530212801002
以之前注册好的用户名以密码登陆。
注:tizen源码是用gerrit来管理的。
登陆后的界面如下:
http://img.blog.csdn.net/20130530213210636
点击右上角的Settings,然后在左边点击Contact Information在显示的界面上添加自己的邮箱,Gerrit系统会自动发送一件验证邮件到你所指定的邮箱中,点击邮件中给出的验证链接进行验证,难证通过后,表示你的Gerrit帐户已经激活,可以正常使用了。

2 配置访问Gerrit的SSH2.1 安装ssh工具
首先得安装ssh工具:
view plaincopy


[*]$ sudo apt-get install ssh

安装ssh成功后会在~/目录下自动生成.ssh隐藏目录.2.2 生成RSA密钥通过如下指令生成RSA密钥:
view plaincopy


[*]~/.ssh$ ssh-keygen -t rsa -C flydream0

其中flydream0为提示内容,可以随便写点内容,一般写做自己的用户名就可以了.系统提示:
view plaincopy


[*]Generating public/private rsa key pair.
[*]Enter file in which to save the key (/home/arthur/.ssh/id_rsa):   

系统提示保存密钥的保存地址,直接按回车键,默认保存到~/.ssh目录下。然后系统回提示你设置一个你的密码,两次设置无误后会出现如下界面:
http://img.blog.csdn.net/20130530215315407
2.3 配置SSH配置文件进入~/.ssh目录下,创建config文件,将如下内容拷贝进去:
view plaincopy


[*]Host tizen
[*]Hostname review.tizen.org
[*]IdentityFile ~/.ssh/id_rsa
[*]User <Gerrit Username>
[*]Port 29418
[*]
[*]#The line below is optional configuration applicable to Ubuntu and openSUSE.
[*]#Add when using proxy, otherwise, skip it.
[*]#ProxyCommand nc -X5 -x <Proxy Address>:<Port> %h %p
[*]
[*]#The line below is optional configuration applicable to Fedora.
[*]#Add when using proxy, otherwise, skip it.
[*]#ProxyCommand nc --proxy-type socks4 --proxy <Proxy Address>:<Port> %h %p

其中<Gerrit Username>为你之前注册的Gerrit用户名,不要包含尖括号.2.4 上传SSH公钥到Gerrit打开~/.ssh目录下的id_rsa.pub文件:
view plaincopy


[*]$vim ~/.ssh/id_rsa.pub

复制里边的全部内容,然后返回到gerrit的设置界面,点击左边的SSH Public Keys,然后添加公钥,如下图所示:http://img.blog.csdn.net/20130530220811106
将你的公钥添加到gerrit中,这样的话你就可以通过git指令获得gerrit中的tizen源码了。
2.5 验证SSH连接执行如下指令:
view plaincopy


[*]$ ssh tizen

将会提示你输入密码:http://img.blog.csdn.net/20130530221244909
输入你之前设置好的SSH密码,然后回车,如果连接正常,将会出现如下界面:
http://img.blog.csdn.net/20130530221425876
这就表示SSH设置是OK的。
3 配置git首先得确保安装了git,如果未安装,则执行如下指令进行安装:
view plaincopy


[*]$ sudo apt-get install git


安装完git后得配置git的全局用户名及邮箱: view plaincopy


[*]$ git config --global user.name flydream0
[*]$ git config --global user.email bumaoxia204@163.com

将flydream0和buamoxia204@163.com替换成你自己的gerrit用户名及邮箱。然后你可以通过如下指令看到你配置好的内容:
view plaincopy


[*]arthur@arthur-laptop:~/.ssh$ git config --global -l
[*]color.ui=auto
[*]user.name=flydream0
[*]user.email=bumaoxia204@163.com
[*]arthur@arthur-laptop:~/.ssh$   

4 下载并配置repotizen源码下载借鉴了Android源码下载的方式,因此,我们首先将 Androiod源码下载工具repo下载并设置好。
在~/目录下创建bin目录:
view plaincopy


[*]$cd ~/
[*]$mkdir bin
[*]$PATH=~/bin:$PATH
[*]$cd bin

安装curl工具:
view plaincopy


[*]$sudo apt-get install curl

然后下载repo工具:
view plaincopy


[*]$curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
[*]$chmod a+x ~/bin/repo

这里就下载并配置好了repo工具.5 下载tizen源码5.1 在Gerrit中查看tizen源码在Gerrit中左上角点击projects,projects字下面的List,然后就会看到tizen源码下的所有project,如下所示:
http://img.blog.csdn.net/20130530224623065
可以发现,tizen下的工程太多了,那么如何下载呢?下载哪些呢?
5.2 初始化repo环境
在浏览器中查找manifest,你会发现有一个工程为:tools/manifest/tizen-2.0-main
我们就先将这个工程下载下来,然后利用这个manifest文件,用 repo工具同步所有tizen源码文件。
我们先建立一下tizen目录:、
view plaincopy


[*]$cd ~/
[*]$mkdir tizen
[*]$cd tizen

首先查看自己Gerrit的地址:
view plaincopy


[*]$ ssh tizen
[*]
[*]****    Welcome to Gerrit Code Review    ****
[*]
[*]Hi arthur, you have successfully connected over SSH.
[*]
[*]Unfortunately, interactive shells are disabled.
[*]To clone a hosted Git repository, use:
[*]
[*]git clone ssh://flydream0@review.tizen.org:29418/REPOSITORY_NAME.git
[*]
[*]Connection to review.tizen.org closed.

得出tizen源码链接地址为ssh://flydream0@review.tizen.org:29418/......
然后使用manifest/tizen-2.0-main初始化repo下载环境:
view plaincopy


[*]$ repo init -u ssh://flydream0@review.tizen.org:29418/tools/manifest/tizen-2.0-main


将上面的flydream0替换成你自已的Gerrit用户名,也可以用 $repo init -u ssh://flydream0@review.tizen.org:29418/tools/mainifest/tizen-2.0-main.git
有没有git后缀对repo来说都是一样的。
接下来有可能要你输入ssh的密码。再接下来会将tizen源码的环境同步到本地,在当前目录下将会生成.repo隐藏目录。如下图:
http://img.blog.csdn.net/20130531224050010

5.3 修改manifest.xml清单文件
接下来打开./.repo/manifests/default.xml清单文件:
view plaincopy


[*]$ vim .repo/manifests/default.xml   

将fetch后面的内容修改为:"ssh://flydream0@review.tizen.org:29418",review后面的内容修改为:"https://review.tizen.org/gerrit/"如下图:
http://img.blog.csdn.net/20130531224923463
同样将flydream0修改为你自己的Gerrit用户名.

5.4 同步tizen源码
最后下载源码:
view plaincopy


[*]$repo sync -j4

下载界面如下:
http://img.blog.csdn.net/20130531225042944

下载过程是一个漫长而痛苦的等待过程,之所以说痛苦,那是因为中途还可能会出错,得不断重新输入指令,最后下载完的时间取决于各自的机器与网络速度。
好了,tizen源码的下载就讲到这了,下一章我将继续讲述如何编译tizen 源码及如何生成镜像文件,敬请关注!


6 后续补充上述方法没有错,但是后来发现用此方法下载时老是出错,错误信息大概如下:
view plaincopy


[*]Fetching projects:   1% (10/915)fatal: '/adaptation/devices/alsa-scenario-files-0.0': not a Gerrit project
[*]fatal: The remote end hung up unexpectedly
[*]fatal: '/adaptation/devices/alsa-scenario-files-0.0': not a Gerrit project
[*]fatal: The remote end hung up unexpectedly
[*]error: Cannot fetch adaptation/devices/alsa-scenario-files-0.0

发现原来是清单文件的问题,清单文件的链接内容是已经过时的了,因此需要找一个比较新的清单文件来替换现有的清单文件。打开http://download.tizen.org/链接,会发现这里边有tizen发布的各种版本的镜像文件,找一个比较新的,比如:
http://download.tizen.org/releases/daily/2.0alpha/ivi-wayland/tizen-2.0alpha_20130522.2/images/ivi-wayland-release/,如下所示:
http://img.blog.csdn.net/20130604202817468

在此目录下包含tizen镜像文件tizenxxx.raw.bz2,还有其对应的清单文件ivi-wayland-release-tizen-2.0alpha_20130522.2.manifest.xml,这个清单文件对我们来说非常重要,因为它包含了此tizen版本对镜像文件对应的所有资源链接信息,这样一来,我们就可以利用此清单文件下载到所有源文件!
6.1 下载清单文件如里你是用firefox浏览单打开的此网页,那么可以右点击ivi-wayland-release-tizen-2.0alpha_20130522.2.manifest.xml,然后选择cope link location,然后粘贴到wget后面:
view plaincopy


[*]$ wget http://download.tizen.org/releases/daily/2.0alpha/ivi-wayland/tizen-2.0alpha_20130522.2/images/ivi-wayland-release/ivi-wayland-release-tizen-2.0alpha_20130522.2.manifest.xml

这样就将此清单文件下载到当前目录下了,当然你也可以用其它方面下载此清单文件。6.2 修改清单文件的内容用vim打开上面下载的清单文件:
view plaincopy


[*]$ vim ivi-wayland-release-tizen-2.0alpha_20130522.2.manifest.xml

同5.3节的步骤一样,将fetch后面的内容修改成你自己的Gerrit地址:http://img.blog.csdn.net/20130531232628875
当然上述的flyream0需要修改成你自己的Gerrit用户名.
6.3 替换现有的清单文件先备份好现有的清单文件:
view plaincopy


[*]$ cp .repo/manifests/default.xml default.xml.bak

然后再替换它: view plaincopy


[*]$ cp ivi-wayland-release-tizen-2.0alpha_20130522.2.manifest.xml .repo/manifests/default.xml   


6.4 同步tizen源码 view plaincopy


[*]$repo sync -j4


再次进入漫长而痛苦的等待过程,这次下载不再出现中途会出现错误的情况了。
下载成功后的界面如下:
http://img.blog.csdn.net/20130605211111062


好了,祝大家一切顺利。

xblxun21 发表于 2013-6-9 21:57:27

为了三千积分!
页: [1]
查看完整版本: 下载泰泽tizen源码图文教程