<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.meego.com/skins/common/feed.css?270"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.meego.com/index.php?title=Special:Contributions/Z1x2y3121&amp;feed=atom&amp;limit=50&amp;target=Z1x2y3121&amp;year=&amp;month=</id>
		<title>MeeGo wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.meego.com/index.php?title=Special:Contributions/Z1x2y3121&amp;feed=atom&amp;limit=50&amp;target=Z1x2y3121&amp;year=&amp;month="/>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Special:Contributions/Z1x2y3121"/>
		<updated>2013-05-20T21:59:05Z</updated>
		<subtitle>From MeeGo wiki</subtitle>
		<generator>MediaWiki 1.16.2</generator>

	<entry>
		<id>http://wiki.meego.com/Image_Creation_For_Beginners</id>
		<title>Image Creation For Beginners</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Image_Creation_For_Beginners"/>
				<updated>2011-02-15T12:35:18Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Creating a MeeGo Image ==&lt;br /&gt;
&lt;br /&gt;
Here are the simple steps on how to create a MeeGo image.&lt;br /&gt;
&lt;br /&gt;
For more in-depth information, go to the main Image Creator developer's guide: [[Image Creation]]&lt;br /&gt;
&lt;br /&gt;
'''STEP 1 - Download Meego Image Creator (MIC)'''&lt;br /&gt;
&lt;br /&gt;
MeeGo Image Creator is the tool we use to create MeeGo images.  To get it you can:&lt;br /&gt;
&lt;br /&gt;
* Download MIC source from Gitorious:&lt;br /&gt;
http://meego.gitorious.org/meego-developer-tools/image-creator&lt;br /&gt;
* Or, for Debian Squeeze, add the following line to /etc/apt/sources.list and install (using apt-get) ''mic2'':&lt;br /&gt;
 deb &amp;lt;nowiki&amp;gt;http://repo.meego.com/tools/repos/debian/5.0/&amp;lt;/nowiki&amp;gt; /&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
More on installation dependencies and options on downloading MIC, go to the 'Installation' section here: [[Image_Creation#Requirements]]&lt;br /&gt;
&lt;br /&gt;
'''STEP 2 - Get MeeGo .ks File'''&lt;br /&gt;
&lt;br /&gt;
KickStart (.ks) configuration files are passed to MIC to create images. KickStart files specify what repos to pull from, what packages to include, what post-scripts to run and what type of images to create.&lt;br /&gt;
&lt;br /&gt;
*The official MeeGo .ks files for ARM based Nokia N900 are here: http://repo.meego.com/MeeGo/builds/trunk/ &amp;lt;version&amp;gt;/handset/images/meego-handset-armv7l-n900/&lt;br /&gt;
*The official MeeGo .ks files for Intel Atom based netbook and handset (Moorestown) are here:  http://repo.meego.com/MeeGo/builds/trunk/ &amp;lt;version&amp;gt;/{netbook,handset,ivi}/images&lt;br /&gt;
&lt;br /&gt;
You can download and use them as a base for the MeeGo images you create. Modify these .ks files as you wish to create tailored images. &lt;br /&gt;
&lt;br /&gt;
We will use the netbook kickstart file to create a MeeGo netbook image: http://repo.meego.com/MeeGo/builds/trunk/1.1.80.7.20101119.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.7.20101119.1.ks (This is the latest file on November 19, 2010 hence please adjust the URL to get the latest version!)&lt;br /&gt;
&lt;br /&gt;
It seems that the &amp;quot;@Core&amp;quot; and &amp;quot;@Base&amp;quot; have been renamed to &amp;quot;@Meego Core&amp;quot; and &amp;quot;@Meego Base&amp;quot; so i suggest you to edit the .ks file to rename the package with the good name.&lt;br /&gt;
&lt;br /&gt;
'''STEP 3 - Create MeeGo Livecd Image'''&lt;br /&gt;
&lt;br /&gt;
MIC has to be run with root privileges using 'sudo'.&lt;br /&gt;
&lt;br /&gt;
Here is the command to create a MeeGo livecd image you can burn onto a CD.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator --config=default.ks --format=livecd --cache=mycache&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A file named meego-1.0-default-XX.iso is created.  This ISO image is a hybrid image and can be either written to a disk device or burned onto a cd. &lt;br /&gt;
&lt;br /&gt;
'''STEP 4 - Create MeeGo LiveUSB Image'''&lt;br /&gt;
&lt;br /&gt;
To create a MeeGo liveusb image that you can transfer to a USB stick.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator --config=default.ks --format=liveusb --cache=mycache&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A file named meego-1.0-default-XX.usbimg will be created. To burn it onto a USB stick, run the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-writer meego-1.0-default-XX.usbimg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This image has a FAT file system and can be mounted easily on Windows and other OSes. &lt;br /&gt;
&lt;br /&gt;
'''---FOR ADDITIONAL INFORMATION ON MIC, PLEASE VISIT THE MIC DEVELOPER'S GUIDE HERE: [[Image Creation]]---'''&lt;br /&gt;
&lt;br /&gt;
== Configure Proxy and Other Variables ==&lt;br /&gt;
&lt;br /&gt;
~/.mic2.conf is a configuration file that can make your life easier by specifying proxy settings, cache directories, and other variables that you normally would have to re-type in your command-line. &lt;br /&gt;
&lt;br /&gt;
Copy and paste this into a file called:  ~/.mic2.conf&lt;br /&gt;
&lt;br /&gt;
Replace with your own relevant values.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[main]&lt;br /&gt;
cachedir=/home/user1/mycache&lt;br /&gt;
tmpdir=/home/user1/mystorage/tmp&lt;br /&gt;
outdir=/home/user1/mystorage&lt;br /&gt;
proxy=http://my.proxy.com:911/&lt;br /&gt;
no_proxy=localhost,127.0.0.0/8,.mysite.com,172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''cachedir'' = directory where the cached repo(s) will reside.  With this variable set, you do not need to pass the --cache flag in the command-line.&lt;br /&gt;
&lt;br /&gt;
''tmpdir'' = temporary directory used by mic2 when creating images.  With this variable set, you do not need to pass the --tmpdir flag in the command-line.&lt;br /&gt;
&lt;br /&gt;
''outdir'' = where your images will reside once they are created.  With this variable set, you do not need to pass the --outdir flag in the command-line.&lt;br /&gt;
&lt;br /&gt;
''proxy'' = specify your proxy if you're behind a behind a firewall.&lt;br /&gt;
&lt;br /&gt;
''no_proxy'' = specify what domains should not sure the proxy setting.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' When specifying proxy and no_proxy, you do not need to use the --proxy flag in your .ks files when referring to repos.&lt;br /&gt;
&lt;br /&gt;
'''---FOR ADDITIONAL INFORMATION ON MIC, PLEASE VISIT THE MIC DEVELOPER'S GUIDE HERE: [[Image_Creation]]---'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Another language version of this page ==&lt;br /&gt;
&lt;br /&gt;
* [[适合新手的镜像制作-_-简体中文]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/%E9%80%82%E5%90%88%E6%96%B0%E6%89%8B%E7%9A%84%E9%95%9C%E5%83%8F%E5%88%B6%E4%BD%9C-_-%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87</id>
		<title>适合新手的镜像制作- -简体中文</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/%E9%80%82%E5%90%88%E6%96%B0%E6%89%8B%E7%9A%84%E9%95%9C%E5%83%8F%E5%88%B6%E4%BD%9C-_-%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87"/>
				<updated>2011-02-15T12:32:19Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== 制作一个Meego镜像 ==&lt;br /&gt;
&lt;br /&gt;
这里是怎样制作一个Meego镜像的简单步骤。&lt;br /&gt;
&lt;br /&gt;
想要获得更多的深入的信息，参照主要的镜像制作开发者指南：[[Image Creation]]&lt;br /&gt;
&lt;br /&gt;
'''第一步 - 下载 Meego Image Create (MIC)'''&lt;br /&gt;
&lt;br /&gt;
MeeGo Image Creator 是我们用于制作MeeGo镜像的工具。要获得它，你可以：&lt;br /&gt;
&lt;br /&gt;
* 从Gitorious下载MIC源码:&lt;br /&gt;
http://meego.gitorious.org/meego-developer-tools/image-creator&lt;br /&gt;
* 或者，对于Debian Squuuze，将下面的一行加入/etc/apt/sources.list并且安装（使用apt-get）''mic2''：&lt;br /&gt;
 deb &amp;lt;nowiki&amp;gt;http://repo.meego.com/tools/repos/debian/5.0/&amp;lt;/nowiki&amp;gt; /&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
更多的安装需要和在下载MIC时的选项，参照这的'Installation'部分：[[Image_Creation#Requirements]]&lt;br /&gt;
&lt;br /&gt;
'''第二步 - 获取MeeGo .ks文件'''&lt;br /&gt;
&lt;br /&gt;
MIC通过KickStart (.ks)配置文件制作镜像.KickStart文件指定由哪些repo获取，包含哪些包，运行哪些后台脚本和制作哪种类型的镜像&lt;br /&gt;
&lt;br /&gt;
*基于Nokia N900的ARM官方MeeGo .ks文件在这：http://repo.meego.com/MeeGo/builds/trunk/ &amp;lt;版本&amp;gt;/handset/images/meego-handset-armv7l-n900/&lt;br /&gt;
*基于上网本和手机(Moorestown)的Intel Atom官方MeeGo .ks文件在这：http://repo.meego.com/MeeGo/builds/trunk/ &amp;lt;版本&amp;gt;/{netbook,handset,ivi}/images&lt;br /&gt;
&lt;br /&gt;
你可以下载和使用它们作为你制作MeeGo镜像的基础，通过修改这些.ks文件来制作你需要的镜像.&lt;br /&gt;
&lt;br /&gt;
我们将使用上网本的kickstart文件去制作一个MeeGo上网本镜像：http://repo.meego.com/MeeGo/builds/trunk/1.1.80.7.20101119.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.7.20101119.1.ks (这是2010/11/19最新的文件，请调整网址获取最新的版本!)&lt;br /&gt;
&lt;br /&gt;
好像”@Core”和”Base”已经被重命名为”@MeeGo Core”和”@MeeGo Base”，所以我建议你编辑.ks文件来以合适的名字重命名这些包.&lt;br /&gt;
&lt;br /&gt;
'''第三步 - 制作MeeGo Livecd镜像&lt;br /&gt;
&lt;br /&gt;
MIC必须使用root权限执行，使用'sudo'.&lt;br /&gt;
&lt;br /&gt;
这里是制作一个你可以烧录到CD上的MeeGo livecd镜像.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator --config=default.ks --format=livecd --cache=mycache&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
生成一个名字为meego-1.0-default-XX.iso的文件.这个ISO镜像是一个混合的镜像，可以被写入磁盘设备或者烧录到CD盘上.&lt;br /&gt;
&lt;br /&gt;
'''第四步 - 制作LiveUSB镜像'''&lt;br /&gt;
&lt;br /&gt;
制作一个可以转移到usb存储器中的MeeGo liveusb镜像.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator --config=default.ks --format=liveusb --cache=mycache&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
将会生成一个名字为meego-1.0-default-XX.usbimg的文件. 要将它烧到USB存储器中，执行以下命令： &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-writer meego-1.0-default-XX.usbimg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
这个镜像含有一个FAT文件系统，可以很容易的在Windows和其他系统中挂载.&lt;br /&gt;
&lt;br /&gt;
'''---要获取更多关于MIC的信息，请访问MIC开发者指南:[[Image Creation]]---'''&lt;br /&gt;
&lt;br /&gt;
== 配置Proxy和其他变量 ==&lt;br /&gt;
&lt;br /&gt;
~/.mic2.conf是一个配置文件，它使得你更简单的指定proxy设置，缓冲目录和其它通常必须在命令行再次输入的变量&lt;br /&gt;
&lt;br /&gt;
复制和粘贴这些到~/.mic2.conf文件中.&lt;br /&gt;
&lt;br /&gt;
用你自己的值替换相关的变量&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[main]&lt;br /&gt;
cachedir=/home/user1/mycache&lt;br /&gt;
tmpdir=/home/user1/mystorage/tmp&lt;br /&gt;
outdir=/home/user1/mystorage&lt;br /&gt;
proxy=http://my.proxy.com:911/&lt;br /&gt;
no_proxy=localhost,127.0.0.0/8,.mysite.com,172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''cachedir'' = 存放缓存仓库的目录.有了这个变量设置，你就不需要在命令行使用--cache标记.&lt;br /&gt;
&lt;br /&gt;
''tmpdir'' = 当制作镜像时mic2所使用的临时目录.有了这个变量设置，你就不需要在命令行使用--tmpdir标记.&lt;br /&gt;
&lt;br /&gt;
''outdir'' = 存放生成镜像的目录.有了这个变量设置，你就不需要在命令行使用--outdir标记.&lt;br /&gt;
&lt;br /&gt;
''proxy'' = 如果你是工作在防火墙后的话,指定你的代理.&lt;br /&gt;
&lt;br /&gt;
''no_proxy'' = 指定那些不确定代理设置的域.&lt;br /&gt;
&lt;br /&gt;
'''注意：'''指定了proxy和no_proxy后，你不需要在.ks文件中的repos部分使用--proxy标记.&lt;br /&gt;
&lt;br /&gt;
'''------要获取更多关于MIC的信息，请访问MIC开发者指南:[[Image Creation]]---'''&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/%E9%80%82%E5%90%88%E5%88%9D%E5%AD%A6%E8%80%85%E7%9A%84%E9%95%9C%E5%83%8F%E5%88%B6%E4%BD%9C-_-%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87</id>
		<title>适合初学者的镜像制作- -简体中文</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/%E9%80%82%E5%90%88%E5%88%9D%E5%AD%A6%E8%80%85%E7%9A%84%E9%95%9C%E5%83%8F%E5%88%B6%E4%BD%9C-_-%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87"/>
				<updated>2011-02-15T12:31:15Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: moved 适合初学者的镜像制作- -简体中文 to 适合新手的镜像制作- -简体中文&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[适合新手的镜像制作- -简体中文]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/%E9%80%82%E5%90%88%E6%96%B0%E6%89%8B%E7%9A%84%E9%95%9C%E5%83%8F%E5%88%B6%E4%BD%9C-_-%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87</id>
		<title>适合新手的镜像制作- -简体中文</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/%E9%80%82%E5%90%88%E6%96%B0%E6%89%8B%E7%9A%84%E9%95%9C%E5%83%8F%E5%88%B6%E4%BD%9C-_-%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87"/>
				<updated>2011-02-15T12:31:15Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: moved 适合初学者的镜像制作- -简体中文 to 适合新手的镜像制作- -简体中文&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== 制作一个Meego镜像 ==&lt;br /&gt;
&lt;br /&gt;
这里是怎样制作一个Meego镜像的简单步骤。&lt;br /&gt;
&lt;br /&gt;
想要获得更多的深入的信息，参照主要的镜像制作开发者指南：[[Image Creation]]&lt;br /&gt;
&lt;br /&gt;
'''第一步 - 下载 Meego Image Create (MIc)'''&lt;br /&gt;
&lt;br /&gt;
MeeGo Image Creator 是我们用于制作MeeGo镜像的工具。要获得它，你可以：&lt;br /&gt;
&lt;br /&gt;
* 从Gitorious下载MIC源码:&lt;br /&gt;
http://meego.gitorious.org/meego-developer-tools/image-creator&lt;br /&gt;
* 或者，对于Debian Squuuze，将下面的一行加入/etc/apt/sources.list并且安装（使用apt-get）''mic2''：&lt;br /&gt;
 deb &amp;lt;nowiki&amp;gt;http://repo.meego.com/tools/repos/debian/5.0/&amp;lt;/nowiki&amp;gt; /&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
更多的安装需要和在下载MIC时的选项，参照这的'Installation'部分：[[Image_Creation#Requirements]]&lt;br /&gt;
&lt;br /&gt;
'''第二步 - 获取MeeGo .ks文件'''&lt;br /&gt;
&lt;br /&gt;
MIC通过KickStart (.ks)配置文件制作镜像.KickStart文件指定由哪些repo获取，包含哪些包，运行哪些后台脚本和制作哪种类型的镜像&lt;br /&gt;
&lt;br /&gt;
*基于Nokia N900的ARM官方MeeGo .ks文件在这：http://repo.meego.com/MeeGo/builds/trunk/ &amp;lt;版本&amp;gt;/handset/images/meego-handset-armv7l-n900/&lt;br /&gt;
*基于上网本和手机(Moorestown)的Intel Atom官方MeeGo .ks文件在这：http://repo.meego.com/MeeGo/builds/trunk/ &amp;lt;版本&amp;gt;/{netbook,handset,ivi}/images&lt;br /&gt;
&lt;br /&gt;
你可以下载和使用它们作为你制作MeeGo镜像的基础，通过修改这些.ks文件来制作你需要的镜像.&lt;br /&gt;
&lt;br /&gt;
我们将使用上网本的kickstart文件去制作一个MeeGo上网本镜像：http://repo.meego.com/MeeGo/builds/trunk/1.1.80.7.20101119.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.7.20101119.1.ks (这是2010/11/19最新的文件，请调整网址获取最新的版本!)&lt;br /&gt;
&lt;br /&gt;
好像”@Core”和”Base”已经被重命名为”@MeeGo Core”和”@MeeGo Base”，所以我建议你编辑.ks文件来以合适的名字重命名这些包.&lt;br /&gt;
&lt;br /&gt;
'''第三步 - 制作MeeGo Livecd镜像&lt;br /&gt;
&lt;br /&gt;
MIC必须使用root权限执行，使用'sudo'.&lt;br /&gt;
&lt;br /&gt;
这里是制作一个你可以烧录到CD上的MeeGo livecd镜像.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator --config=default.ks --format=livecd --cache=mycache&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
生成一个名字为meego-1.0-default-XX.iso的文件.这个ISO镜像是一个混合的镜像，可以被写入磁盘设备或者烧录到CD盘上.&lt;br /&gt;
&lt;br /&gt;
'''第四步 - 制作LiveUSB镜像'''&lt;br /&gt;
&lt;br /&gt;
制作一个可以转移到usb存储器中的MeeGo liveusb镜像.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator --config=default.ks --format=liveusb --cache=mycache&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
将会生成一个名字为meego-1.0-default-XX.usbimg的文件. 要将它烧到USB存储器中，执行以下命令： &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-writer meego-1.0-default-XX.usbimg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
这个镜像含有一个FAT文件系统，可以很容易的在Windows和其他系统中挂载.&lt;br /&gt;
&lt;br /&gt;
'''---要获取更多关于MIC的信息，请访问MIC开发者指南:[[Image Creation]]---'''&lt;br /&gt;
&lt;br /&gt;
== 配置Proxy和其他变量 ==&lt;br /&gt;
&lt;br /&gt;
~/.mic2.conf是一个配置文件，它使得你更简单的指定proxy设置，缓冲目录和其它通常必须在命令行再次输入的变量&lt;br /&gt;
&lt;br /&gt;
复制和粘贴这些到~/.mic2.conf文件中.&lt;br /&gt;
&lt;br /&gt;
用你自己的值替换相关的变量&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[main]&lt;br /&gt;
cachedir=/home/user1/mycache&lt;br /&gt;
tmpdir=/home/user1/mystorage/tmp&lt;br /&gt;
outdir=/home/user1/mystorage&lt;br /&gt;
proxy=http://my.proxy.com:911/&lt;br /&gt;
no_proxy=localhost,127.0.0.0/8,.mysite.com,172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''cachedir'' = 存放缓存仓库的目录.有了这个变量设置，你就不需要在命令行使用--cache标记.&lt;br /&gt;
&lt;br /&gt;
''tmpdir'' = 当制作镜像时mic2所使用的临时目录.有了这个变量设置，你就不需要在命令行使用--tmpdir标记.&lt;br /&gt;
&lt;br /&gt;
''outdir'' = 存放生成镜像的目录.有了这个变量设置，你就不需要在命令行使用--outdir标记.&lt;br /&gt;
&lt;br /&gt;
''proxy'' = 如果你是工作在防火墙后的话,指定你的代理.&lt;br /&gt;
&lt;br /&gt;
''no_proxy'' = 指定那些不确定代理设置的域.&lt;br /&gt;
&lt;br /&gt;
'''注意：'''指定了proxy和no_proxy后，你不需要在.ks文件中的repos部分使用--proxy标记.&lt;br /&gt;
&lt;br /&gt;
'''------要获取更多关于MIC的信息，请访问MIC开发者指南:[[Image Creation]]---'''&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/%E9%80%82%E5%90%88%E6%96%B0%E6%89%8B%E7%9A%84%E9%95%9C%E5%83%8F%E5%88%B6%E4%BD%9C-_-%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87</id>
		<title>适合新手的镜像制作- -简体中文</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/%E9%80%82%E5%90%88%E6%96%B0%E6%89%8B%E7%9A%84%E9%95%9C%E5%83%8F%E5%88%B6%E4%BD%9C-_-%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87"/>
				<updated>2011-02-15T12:30:54Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== 制作一个Meego镜像 ==&lt;br /&gt;
&lt;br /&gt;
这里是怎样制作一个Meego镜像的简单步骤。&lt;br /&gt;
&lt;br /&gt;
想要获得更多的深入的信息，参照主要的镜像制作开发者指南：[[Image Creation]]&lt;br /&gt;
&lt;br /&gt;
'''第一步 - 下载 Meego Image Create (MIc)'''&lt;br /&gt;
&lt;br /&gt;
MeeGo Image Creator 是我们用于制作MeeGo镜像的工具。要获得它，你可以：&lt;br /&gt;
&lt;br /&gt;
* 从Gitorious下载MIC源码:&lt;br /&gt;
http://meego.gitorious.org/meego-developer-tools/image-creator&lt;br /&gt;
* 或者，对于Debian Squuuze，将下面的一行加入/etc/apt/sources.list并且安装（使用apt-get）''mic2''：&lt;br /&gt;
 deb &amp;lt;nowiki&amp;gt;http://repo.meego.com/tools/repos/debian/5.0/&amp;lt;/nowiki&amp;gt; /&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
更多的安装需要和在下载MIC时的选项，参照这的'Installation'部分：[[Image_Creation#Requirements]]&lt;br /&gt;
&lt;br /&gt;
'''第二步 - 获取MeeGo .ks文件'''&lt;br /&gt;
&lt;br /&gt;
MIC通过KickStart (.ks)配置文件制作镜像.KickStart文件指定由哪些repo获取，包含哪些包，运行哪些后台脚本和制作哪种类型的镜像&lt;br /&gt;
&lt;br /&gt;
*基于Nokia N900的ARM官方MeeGo .ks文件在这：http://repo.meego.com/MeeGo/builds/trunk/ &amp;lt;版本&amp;gt;/handset/images/meego-handset-armv7l-n900/&lt;br /&gt;
*基于上网本和手机(Moorestown)的Intel Atom官方MeeGo .ks文件在这：http://repo.meego.com/MeeGo/builds/trunk/ &amp;lt;版本&amp;gt;/{netbook,handset,ivi}/images&lt;br /&gt;
&lt;br /&gt;
你可以下载和使用它们作为你制作MeeGo镜像的基础，通过修改这些.ks文件来制作你需要的镜像.&lt;br /&gt;
&lt;br /&gt;
我们将使用上网本的kickstart文件去制作一个MeeGo上网本镜像：http://repo.meego.com/MeeGo/builds/trunk/1.1.80.7.20101119.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.7.20101119.1.ks (这是2010/11/19最新的文件，请调整网址获取最新的版本!)&lt;br /&gt;
&lt;br /&gt;
好像”@Core”和”Base”已经被重命名为”@MeeGo Core”和”@MeeGo Base”，所以我建议你编辑.ks文件来以合适的名字重命名这些包.&lt;br /&gt;
&lt;br /&gt;
'''第三步 - 制作MeeGo Livecd镜像&lt;br /&gt;
&lt;br /&gt;
MIC必须使用root权限执行，使用'sudo'.&lt;br /&gt;
&lt;br /&gt;
这里是制作一个你可以烧录到CD上的MeeGo livecd镜像.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator --config=default.ks --format=livecd --cache=mycache&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
生成一个名字为meego-1.0-default-XX.iso的文件.这个ISO镜像是一个混合的镜像，可以被写入磁盘设备或者烧录到CD盘上.&lt;br /&gt;
&lt;br /&gt;
'''第四步 - 制作LiveUSB镜像'''&lt;br /&gt;
&lt;br /&gt;
制作一个可以转移到usb存储器中的MeeGo liveusb镜像.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator --config=default.ks --format=liveusb --cache=mycache&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
将会生成一个名字为meego-1.0-default-XX.usbimg的文件. 要将它烧到USB存储器中，执行以下命令： &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-writer meego-1.0-default-XX.usbimg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
这个镜像含有一个FAT文件系统，可以很容易的在Windows和其他系统中挂载.&lt;br /&gt;
&lt;br /&gt;
'''---要获取更多关于MIC的信息，请访问MIC开发者指南:[[Image Creation]]---'''&lt;br /&gt;
&lt;br /&gt;
== 配置Proxy和其他变量 ==&lt;br /&gt;
&lt;br /&gt;
~/.mic2.conf是一个配置文件，它使得你更简单的指定proxy设置，缓冲目录和其它通常必须在命令行再次输入的变量&lt;br /&gt;
&lt;br /&gt;
复制和粘贴这些到~/.mic2.conf文件中.&lt;br /&gt;
&lt;br /&gt;
用你自己的值替换相关的变量&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[main]&lt;br /&gt;
cachedir=/home/user1/mycache&lt;br /&gt;
tmpdir=/home/user1/mystorage/tmp&lt;br /&gt;
outdir=/home/user1/mystorage&lt;br /&gt;
proxy=http://my.proxy.com:911/&lt;br /&gt;
no_proxy=localhost,127.0.0.0/8,.mysite.com,172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''cachedir'' = 存放缓存仓库的目录.有了这个变量设置，你就不需要在命令行使用--cache标记.&lt;br /&gt;
&lt;br /&gt;
''tmpdir'' = 当制作镜像时mic2所使用的临时目录.有了这个变量设置，你就不需要在命令行使用--tmpdir标记.&lt;br /&gt;
&lt;br /&gt;
''outdir'' = 存放生成镜像的目录.有了这个变量设置，你就不需要在命令行使用--outdir标记.&lt;br /&gt;
&lt;br /&gt;
''proxy'' = 如果你是工作在防火墙后的话,指定你的代理.&lt;br /&gt;
&lt;br /&gt;
''no_proxy'' = 指定那些不确定代理设置的域.&lt;br /&gt;
&lt;br /&gt;
'''注意：'''指定了proxy和no_proxy后，你不需要在.ks文件中的repos部分使用--proxy标记.&lt;br /&gt;
&lt;br /&gt;
'''------要获取更多关于MIC的信息，请访问MIC开发者指南:[[Image Creation]]---'''&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/%E9%80%82%E5%90%88%E6%96%B0%E6%89%8B%E7%9A%84%E9%95%9C%E5%83%8F%E5%88%B6%E4%BD%9C-_-%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87</id>
		<title>适合新手的镜像制作- -简体中文</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/%E9%80%82%E5%90%88%E6%96%B0%E6%89%8B%E7%9A%84%E9%95%9C%E5%83%8F%E5%88%B6%E4%BD%9C-_-%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87"/>
				<updated>2011-02-15T12:30:19Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: Created page with &amp;quot;__TOC__  == 制作一个Meego镜像 == == Creating a MeeGo Image ==  这里是怎样制作一个Meego镜像的简单步骤。  想要获得更多的深入的信息，参照主要…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== 制作一个Meego镜像 ==&lt;br /&gt;
== Creating a MeeGo Image ==&lt;br /&gt;
&lt;br /&gt;
这里是怎样制作一个Meego镜像的简单步骤。&lt;br /&gt;
&lt;br /&gt;
想要获得更多的深入的信息，参照主要的镜像制作开发者指南：[[Image Creation]]&lt;br /&gt;
&lt;br /&gt;
'''第一步 - 下载 Meego Image Create (MIc)'''&lt;br /&gt;
&lt;br /&gt;
MeeGo Image Creator 是我们用于制作MeeGo镜像的工具。要获得它，你可以：&lt;br /&gt;
&lt;br /&gt;
* 从Gitorious下载MIC源码:&lt;br /&gt;
http://meego.gitorious.org/meego-developer-tools/image-creator&lt;br /&gt;
* 或者，对于Debian Squuuze，将下面的一行加入/etc/apt/sources.list并且安装（使用apt-get）''mic2''：&lt;br /&gt;
 deb &amp;lt;nowiki&amp;gt;http://repo.meego.com/tools/repos/debian/5.0/&amp;lt;/nowiki&amp;gt; /&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
更多的安装需要和在下载MIC时的选项，参照这的'Installation'部分：[[Image_Creation#Requirements]]&lt;br /&gt;
&lt;br /&gt;
'''第二步 - 获取MeeGo .ks文件'''&lt;br /&gt;
&lt;br /&gt;
MIC通过KickStart (.ks)配置文件制作镜像.KickStart文件指定由哪些repo获取，包含哪些包，运行哪些后台脚本和制作哪种类型的镜像&lt;br /&gt;
&lt;br /&gt;
*基于Nokia N900的ARM官方MeeGo .ks文件在这：http://repo.meego.com/MeeGo/builds/trunk/ &amp;lt;版本&amp;gt;/handset/images/meego-handset-armv7l-n900/&lt;br /&gt;
*基于上网本和手机(Moorestown)的Intel Atom官方MeeGo .ks文件在这：http://repo.meego.com/MeeGo/builds/trunk/ &amp;lt;版本&amp;gt;/{netbook,handset,ivi}/images&lt;br /&gt;
&lt;br /&gt;
你可以下载和使用它们作为你制作MeeGo镜像的基础，通过修改这些.ks文件来制作你需要的镜像.&lt;br /&gt;
&lt;br /&gt;
我们将使用上网本的kickstart文件去制作一个MeeGo上网本镜像：http://repo.meego.com/MeeGo/builds/trunk/1.1.80.7.20101119.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.7.20101119.1.ks (这是2010/11/19最新的文件，请调整网址获取最新的版本!)&lt;br /&gt;
&lt;br /&gt;
好像”@Core”和”Base”已经被重命名为”@MeeGo Core”和”@MeeGo Base”，所以我建议你编辑.ks文件来以合适的名字重命名这些包.&lt;br /&gt;
&lt;br /&gt;
'''第三步 - 制作MeeGo Livecd镜像&lt;br /&gt;
&lt;br /&gt;
MIC必须使用root权限执行，使用'sudo'.&lt;br /&gt;
&lt;br /&gt;
这里是制作一个你可以烧录到CD上的MeeGo livecd镜像.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator --config=default.ks --format=livecd --cache=mycache&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
生成一个名字为meego-1.0-default-XX.iso的文件.这个ISO镜像是一个混合的镜像，可以被写入磁盘设备或者烧录到CD盘上.&lt;br /&gt;
&lt;br /&gt;
'''第四步 - 制作LiveUSB镜像'''&lt;br /&gt;
&lt;br /&gt;
制作一个可以转移到usb存储器中的MeeGo liveusb镜像.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator --config=default.ks --format=liveusb --cache=mycache&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
将会生成一个名字为meego-1.0-default-XX.usbimg的文件. 要将它烧到USB存储器中，执行以下命令： &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-writer meego-1.0-default-XX.usbimg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
这个镜像含有一个FAT文件系统，可以很容易的在Windows和其他系统中挂载.&lt;br /&gt;
&lt;br /&gt;
'''---要获取更多关于MIC的信息，请访问MIC开发者指南:[[Image Creation]]---'''&lt;br /&gt;
&lt;br /&gt;
== 配置Proxy和其他变量 ==&lt;br /&gt;
&lt;br /&gt;
~/.mic2.conf是一个配置文件，它使得你更简单的指定proxy设置，缓冲目录和其它通常必须在命令行再次输入的变量&lt;br /&gt;
&lt;br /&gt;
复制和粘贴这些到~/.mic2.conf文件中.&lt;br /&gt;
&lt;br /&gt;
用你自己的值替换相关的变量&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[main]&lt;br /&gt;
cachedir=/home/user1/mycache&lt;br /&gt;
tmpdir=/home/user1/mystorage/tmp&lt;br /&gt;
outdir=/home/user1/mystorage&lt;br /&gt;
proxy=http://my.proxy.com:911/&lt;br /&gt;
no_proxy=localhost,127.0.0.0/8,.mysite.com,172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''cachedir'' = 存放缓存仓库的目录.有了这个变量设置，你就不需要在命令行使用--cache标记.&lt;br /&gt;
&lt;br /&gt;
''tmpdir'' = 当制作镜像时mic2所使用的临时目录.有了这个变量设置，你就不需要在命令行使用--tmpdir标记.&lt;br /&gt;
&lt;br /&gt;
''outdir'' = 存放生成镜像的目录.有了这个变量设置，你就不需要在命令行使用--outdir标记.&lt;br /&gt;
&lt;br /&gt;
''proxy'' = 如果你是工作在防火墙后的话,指定你的代理.&lt;br /&gt;
&lt;br /&gt;
''no_proxy'' = 指定那些不确定代理设置的域.&lt;br /&gt;
&lt;br /&gt;
'''注意：'''指定了proxy和no_proxy后，你不需要在.ks文件中的repos部分使用--proxy标记.&lt;br /&gt;
&lt;br /&gt;
'''------要获取更多关于MIC的信息，请访问MIC开发者指南:[[Image Creation]]---'''&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Build_Infrastructure/Sysadmin_Distro/OBS_setup_openSUSE114</id>
		<title>Build Infrastructure/Sysadmin Distro/OBS setup openSUSE114</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Build_Infrastructure/Sysadmin_Distro/OBS_setup_openSUSE114"/>
				<updated>2011-02-15T08:43:09Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; Please check http://gitorious.org/opensuse/build-service/blobs/master/dist/README.SETUP&lt;br /&gt;
 for the latest setup instructions!&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
These steps are to setup Open Build Service 1.7.5 on an openSuSE 11.2 installation.  Currently this document describes how to setup an evaluation/test setup and is not meant as a production setup.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Most users won't need to install their own OBS and can just use an account on a publicly accessible OBS.  Once public access is allowed to the global MeeGo OBS, there will be a link to obtain access.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
There are cases where vendors may rather have full control of their builds and keep source private due to licensing restrictions, etc.  These instructions are for these special cases.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
MeeGo will switch to version 2.1 of the Build Service which is to be released soon. These instructions will be updated for the new version as soon as possible.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Add Repositories&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
First, we have to add the openSUSE:Tools repository to zypper for qemu-svn and other updated tools.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      cd /etc/zypp/repos.d/;&lt;br /&gt;
      wget http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_11.2/openSUSE:Tools.repo&lt;br /&gt;
      zypper ref&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Accept the trust key.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Setup the Client&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt;Install the Client Packages&amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*For obs worker:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      zypper in obs-worker qemu-svn mount-static bash-static&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Point To The Server&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Edit the file /etc/sysconfig/obs-worker in order to point to correct repository server. (The example server is 192.168.1.1)&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # vi /etc/sysconfig/obs-worker&lt;br /&gt;
      OBS_SRC_SERVER=&amp;quot;192.168.1.1:5352&amp;quot;&lt;br /&gt;
      OBS_REPO_SERVERS=&amp;quot;192.168.1.1:5252&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Start the Client&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Start the worker service&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chkconfig --add obsworker&lt;br /&gt;
      rcobsworker start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Setup the server&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Install the Server packages&amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*For server:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      zypper in obs-server obs-signd obs-utils createrepo nfs-client obs-api memcached lighttpd&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;MySQL Setup&amp;lt;/h3&amp;gt;&lt;br /&gt;
Start daemon by default:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chkconfig --add mysql&lt;br /&gt;
      rcmysql start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Secure the installation&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      /usr/bin/mysql_secure_installation&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Create the databases:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      mysql -u root -p&lt;br /&gt;
      mysql&amp;gt; create database api_production;&lt;br /&gt;
      mysql&amp;gt; create database webui_production;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add the obs user for these databases (substitute the correct password in):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      GRANT all privileges&lt;br /&gt;
            ON api_production.* &lt;br /&gt;
            TO 'obs'@'%', 'obs'@'localhost' IDENTIFIED BY '************';&lt;br /&gt;
      GRANT all privileges&lt;br /&gt;
            ON webui_production.* &lt;br /&gt;
            TO 'obs'@'%', 'obs'@'localhost' IDENTIFIED BY '************';&lt;br /&gt;
      FLUSH PRIVILEGES;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, configure OBS to use MySQL, first the API server.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      vi /srv/www/obs/api/config/database.yml&lt;br /&gt;
      #change the production section&lt;br /&gt;
      production:&lt;br /&gt;
        adapter: mysql&lt;br /&gt;
        database: api_production&lt;br /&gt;
        username: obs&lt;br /&gt;
        password: ************&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
And setup the webui to use MySQL...&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      vi /srv/www/obs/webui/config/database.yml&lt;br /&gt;
      #change the production section&lt;br /&gt;
      production:&lt;br /&gt;
        adapter: mysql&lt;br /&gt;
        database: webui_production&lt;br /&gt;
        username: obs&lt;br /&gt;
        password: ************&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Populate the database&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      cd /srv/www/obs/api/&lt;br /&gt;
      RAILS_ENV=&amp;quot;production&amp;quot;  rake db:setup&lt;br /&gt;
 &lt;br /&gt;
      cd /srv/www/obs/webui/&lt;br /&gt;
      RAILS_ENV=&amp;quot;production&amp;quot; rake db:setup&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
If this fails, check /srv/www/obs/api/config/environments/production.rb and /srv/www/obs/webui/config/environments/production.rb for configuration of the SOURCE_HOST and FRONTEND_HOST.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Setup lighttpd for webui&amp;lt;/h3&amp;gt;&lt;br /&gt;
Make sure vhosts are enabled by uncommenting the following line:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       # vi /etc/lighttpd/lighttpd.conf&lt;br /&gt;
       include_shell &amp;quot;cat /etc/lighttpd/vhosts.d/*.conf&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Setup the regular webui on 80, api on 81, and 82 is the repository.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       vi /etc/lighttpd/vhosts.d/obs.conf&lt;br /&gt;
       $SERVER[&amp;quot;socket&amp;quot;] == &amp;quot;:80&amp;quot; {&lt;br /&gt;
         rails_app   = &amp;quot;webui&amp;quot;&lt;br /&gt;
         rails_root  = &amp;quot;/srv/www/obs/webui&amp;quot;&lt;br /&gt;
         rails_procs = 3&lt;br /&gt;
         # production/development are typical values here&lt;br /&gt;
         rails_mode  = &amp;quot;production&amp;quot;&lt;br /&gt;
         log_root = &amp;quot;/srv/www/obs/webui/log&amp;quot;&lt;br /&gt;
         include &amp;quot;vhosts.d/rails.inc&amp;quot;&lt;br /&gt;
       }&lt;br /&gt;
       $SERVER[&amp;quot;socket&amp;quot;] == &amp;quot;:81&amp;quot; {&lt;br /&gt;
         rails_app   = &amp;quot;api&amp;quot;&lt;br /&gt;
         rails_root  = &amp;quot;/srv/www/obs/api&amp;quot;&lt;br /&gt;
         rails_procs = 3&lt;br /&gt;
         # production/development are typical values here&lt;br /&gt;
         rails_mode  = &amp;quot;production&amp;quot;&lt;br /&gt;
         log_root = &amp;quot;/srv/www/obs/api/log&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
         include &amp;quot;vhosts.d/rails.inc&amp;quot;&lt;br /&gt;
       }&lt;br /&gt;
       $SERVER[&amp;quot;socket&amp;quot;] == &amp;quot;:82&amp;quot; {&lt;br /&gt;
         server.name = &amp;quot;192.168.1.1&amp;quot;&lt;br /&gt;
         server.document-root = &amp;quot;/srv/obs/repos/&amp;quot;&lt;br /&gt;
         dir-listing.activate = &amp;quot;enable&amp;quot;&lt;br /&gt;
       }&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
lighttpd requires some extra modules to be enabled: mod_access, mod_rewrite, mod_magnet, and mod_fastcgi. Do so by editing /etc/lighttpd/modules.conf:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # vi /etc/lighttpd/modules.conf&lt;br /&gt;
    server.modules = (&lt;br /&gt;
      &amp;quot;mod_access&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_alias&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_auth&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_evasive&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_redirect&amp;quot;,&lt;br /&gt;
      &amp;quot;mod_rewrite&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_setenv&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_usertrack&amp;quot;,&lt;br /&gt;
    )&lt;br /&gt;
 &lt;br /&gt;
    ##&lt;br /&gt;
    ## mod_magnet&lt;br /&gt;
    ##&lt;br /&gt;
    include &amp;quot;conf.d/magnet.conf&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
    ##&lt;br /&gt;
    ## FastCGI (mod_fastcgi)&lt;br /&gt;
    ##&lt;br /&gt;
    include &amp;quot;conf.d/fastcgi.conf&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
You need also to configure /srv/www/obs/webui/config/environments/production.rb to point to correct server names:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # vi /srv/www/obs/webui/config/environments/production.rb&lt;br /&gt;
      FRONTEND_HOST = &amp;quot;192.168.1.1&amp;quot;&lt;br /&gt;
      FRONTEND_PORT = 81&lt;br /&gt;
      FRONTEND_PROTOCOL = 'http'&lt;br /&gt;
      BUGZILLA_HOST = nil&lt;br /&gt;
      DOWNLOAD_URL = &amp;quot;http://192.168.1.1:82&amp;quot;&lt;br /&gt;
      ICHAIN_MODE = &amp;quot;off&amp;quot;&lt;br /&gt;
      BASE_NAMESPACE = nil&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Do the same for /srv/www/obs/api/config/environments/production.rb. As soon your backend is not on the same machine as the api (frontend), change the following:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # vi /srv/www/obs/api/config/environments/production.rb&lt;br /&gt;
      SOURCE_HOST = &amp;quot;192.168.1.1&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Add the server to start by default.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chkconfig --add memcached&lt;br /&gt;
      chkconfig --add lighttpd&lt;br /&gt;
      chkconfig --add obsapidelayed&lt;br /&gt;
      chkconfig --add obswebuidelayed&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
ligthttpd user and group need to be the onwer of api and webui dirs (as well as log and tmp):&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chown -R lighttpd.lighttpd /srv/www/obs/{api,webui}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;BSConfig.pm&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
The file &amp;lt;i&amp;gt;/usr/lib/obs/server/BSConfig.pm&amp;lt;/i&amp;gt; is used to configure several settings for the Build Service.  One of the major components is setting up the $hostname variable to the correct value.  Currently I have this set to the IP address of the server.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       my $hostname = '192.168.1.1';&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
The list of directories in /srv/obs/repos/ is the repositories, so I changed the $repodownload:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       our $repodownload = &amp;quot;http://$hostname:82/&amp;quot;;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Verification&amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the server. &lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 # rcmemcached start&lt;br /&gt;
 # rclighttpd start&lt;br /&gt;
 # rcobsapidelayed start&lt;br /&gt;
 # rcobswebuidelayed start &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
At this point you should be able to open a browser and go to your server and login to OBS.  Port 80 should be the webui, port 81 should be the api, and port 82 should be the repository directory.  The default username/password is Admin/opensuse.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt;Start By Default&amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The OBS should start automatically, so they should be added to chkconfig to do so:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       chkconfig --add obsrepserver obssrcserver obsscheduler obsdispatcher obspublisher obswarden obssigner&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Setting up Cross Compile&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt;Configure build types&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
To setup cross compile, add the appropriate machine types to /etc/sysconfig/obs-server.  For example, the following will enable ARM builds.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       # vi /etc/sysconfig/obs-server&lt;br /&gt;
       OBS_SCHEDULER_ARCHITECTURES=&amp;quot;i586 armv5el armv7el“&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Cloning Repositories&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;prj and prjconf&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;The project settings and the project config is an important part of the project and should be copied to the local project setup.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      osc -A &amp;lt;remote API URL&amp;gt; meta prj &amp;lt;repository name&amp;gt; &amp;gt; prj.txt&lt;br /&gt;
      osc -A &amp;lt;remote API URL&amp;gt; meta prjconf &amp;lt;repository name&amp;gt; &amp;gt; prjconf.txt&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Modify the prj.txt file to name valid users in the userid fields.  Once modified, the settings and configuration can be applied to the local project.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      osc -A &amp;lt;local API URL&amp;gt; meta prj &amp;lt;repository name&amp;gt; -F prj.txt&lt;br /&gt;
      osc -A &amp;lt;local API URL&amp;gt; meta prjconf &amp;lt;repository name&amp;gt; -F prjconf.txt&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Mirror&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
obs_mirror_project (/usr/sbin/obs_mirror_project) is used to copy an external OBS project.  The script needed to be modified to use build.meego.com as apposed to the hard coded download.opensuse.org site. You need an login to build.meego.com to execute this script.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
/usr/sbin/obs_mirror_project &amp;lt;repository name&amp;gt; &amp;lt;type&amp;gt; &amp;lt;arch&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Rescan Repository&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Once the download of the project is complete, you have to rescan the local repository.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
/usr/lib/obs/server/bs_admin --rescan-repository &amp;lt;repository name&amp;gt; &amp;lt;type&amp;gt; &amp;lt;arch&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Troubleshooting&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Here are common issues that have been seen and how to resolve them.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;HTTP Error 500&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Check &amp;lt;b&amp;gt;/srv/www/obs/api/config/environments/production.rb&amp;lt;/b&amp;gt;&lt;br /&gt;
 and &amp;lt;b&amp;gt;/srv/www/obs/webui/config/environments/production.rb&amp;lt;/b&amp;gt; for configuration of the &lt;br /&gt;
&amp;lt;b&amp;gt;SOURCE_HOST&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;FRONTEND_HOST&amp;lt;/b&amp;gt;.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt;Cannot load person data for Admin in application_helper&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Make sure you set the permissions on the api and webui directories.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chown -R lighttpd.lighttpd /srv/www/obs/{api,webui}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
If this doesn't work then try to recreate the databases:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # mysql -u root -p&lt;br /&gt;
      mysql&amp;gt; drop database api_production;&lt;br /&gt;
      mysql&amp;gt; drop database webui_production;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Rerun the mysql database setup from above and re-run rake.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;h2&amp;gt;External Links&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
[http://wiki.maemo.org/OpenSuse_Build_Service/Installation Maemo OBS Installation]&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
[http://wiki.maemo.org/OpenSuse_Build_Service/Fremantle_Setup Maemo Fremantel Setup]&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
[[User:Liam | Liam]]&lt;br /&gt;
&lt;br /&gt;
[[User:Dl9pf | Dl9pf]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Build Infrastructure]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2011-02-14T08:36:17Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Another language version of this page */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for people who want to avoid any connection with any OBS backend - ie &amp;quot;as raw as possible&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If you simply want to do a local build then you probably want &amp;quot;osc build&amp;quot; which does almost everything for you.&lt;br /&gt;
see [[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem :&lt;br /&gt;
&lt;br /&gt;
on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
  &lt;br /&gt;
on ubuntu10.04,you should install 'qemu-arm-static',use command:apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
On Debian, you should install 'qemu-user-static' from Squeeze (Debian 6.0) and later.&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
This problem on Ubuntu 10.04 when using 'build' to create a i586 package. Please Use ''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
The arch must be '''i686'''.&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
when build a armv7l rpm,modify /usr/lib/build/build and /usr/lib/build/configs/meego-1.0.conf ,change armv7el to armv7l in these files,maybe /usr/lib/build/Build.pm also need change.&lt;br /&gt;
       &lt;br /&gt;
&lt;br /&gt;
== Another language version of this page ==&lt;br /&gt;
&lt;br /&gt;
* [[不需要obs的本地build-_简体中文]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2011-02-14T08:35:12Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Another language version of this page */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for people who want to avoid any connection with any OBS backend - ie &amp;quot;as raw as possible&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If you simply want to do a local build then you probably want &amp;quot;osc build&amp;quot; which does almost everything for you.&lt;br /&gt;
see [[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem :&lt;br /&gt;
&lt;br /&gt;
on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
  &lt;br /&gt;
on ubuntu10.04,you should install 'qemu-arm-static',use command:apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
On Debian, you should install 'qemu-user-static' from Squeeze (Debian 6.0) and later.&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
This problem on Ubuntu 10.04 when using 'build' to create a i586 package. Please Use ''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
The arch must be '''i686'''.&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
when build a armv7l rpm,modify /usr/lib/build/build and /usr/lib/build/configs/meego-1.0.conf ,change armv7el to armv7l in these files,maybe /usr/lib/build/Build.pm also need change.&lt;br /&gt;
       &lt;br /&gt;
&lt;br /&gt;
== Another language version of this page ==&lt;br /&gt;
&lt;br /&gt;
* [[不需要obs的本地build - 简体中文]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/%E4%B8%8D%E9%9C%80%E8%A6%81obs%E7%9A%84%E6%9C%AC%E5%9C%B0%E5%88%9B%E5%BB%BA_-_%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87</id>
		<title>不需要obs的本地创建 - 简体中文</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/%E4%B8%8D%E9%9C%80%E8%A6%81obs%E7%9A%84%E6%9C%AC%E5%9C%B0%E5%88%9B%E5%BB%BA_-_%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87"/>
				<updated>2011-02-14T08:34:45Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: moved 不需要obs的本地创建 - 简体中文 to 不需要obs的本地build- 简体中文&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[不需要obs的本地build- 简体中文]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/%E4%B8%8D%E9%9C%80%E8%A6%81obs%E7%9A%84%E6%9C%AC%E5%9C%B0build-_%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87</id>
		<title>不需要obs的本地build- 简体中文</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/%E4%B8%8D%E9%9C%80%E8%A6%81obs%E7%9A%84%E6%9C%AC%E5%9C%B0build-_%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87"/>
				<updated>2011-02-14T08:34:45Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: moved 不需要obs的本地创建 - 简体中文 to 不需要obs的本地build- 简体中文&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;这页主要是为了那些想尽量不与OBS后台连接的人-比如“尽量原始”&lt;br /&gt;
&lt;br /&gt;
如果你只是想进行一次本地创建，那么你可能会使用“osc build&amp;quot;,因为它基本可以为你做任何事。参照[[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== 使用build创建你的包 ==&lt;br /&gt;
&lt;br /&gt;
一种更简单的创建包的方法就是使用‘build’，它是OpenSUSE，MeeGo中创建时用到的的基础工具，你可以根据的linux系统从这得到它的二进制包：http://repo.meego.com/MeeGo/tools/repos/， 如果你的系统不再那，你可以从这获取它的源码包   http://www.gitorious.org/opensuse/build ，然后手动创建。&lt;br /&gt;
&lt;br /&gt;
安装上它过后（我相信你知道怎么在你的linux系统上安装一个包），你可以通过运行“build --help”查看帮助信息。	&lt;br /&gt;
&lt;br /&gt;
你必须以root权限来运行build。如果你的网络需要代理，请设置好代理环境变量，比如：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
如果你运行的是“sudo build ...” 并且你的网络需要proxy，请确保 sudo 继承了代理环境变量，你可以通过将下面的数据键入/etc/sudoers来实现	&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build 会核查rpm包的签名，所以你必须导入你要使用的仓库公钥，比如：&lt;br /&gt;
&lt;br /&gt;
对于 http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
你可以由此获得它的公钥：&lt;br /&gt;
 http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
这个命令将会创建一个cpio的Meego二进制包。&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
你也可以选择使用spec文件去创建它，就这种情况而言，build将会在当前工作目录中找你的源码tar包和patche文件。	&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build将会依据你的repo地址去缓存你的repo，所以对于相同的仓库，请每次使用相同的地址（地址末尾加/和不加/将得到不同的缓存目录），你可以使用多个:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
默认的缓存目录是/var/cache/build.你可以使用--cachedir选项来指定到其他目录。	&lt;br /&gt;
&lt;br /&gt;
默认的BUILDROOT目录是/var/tmp/build-root,你可以使用 --root选项指定一个或者更多的目录，一旦build完成了，你可以从BUILDROOT中获得你的二进制包，比如：	&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
你的cpio二进制包是	 /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
&lt;br /&gt;
== 疑难解答 （ARM） == &lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
碰到这个问题：&lt;br /&gt;
&lt;br /&gt;
在fedora13上使用‘build’去创建 armv7l 的rpm包时&lt;br /&gt;
其中可能的原因：可能是'qemu-arm'设置不正确。可以试试运行命令‘file /use/bin/qemu-arm’，如果他的结果显示‘dynamically linked’，那可能问题就在这，它本应该是‘statically linked’。 可以使用命令 '&lt;br /&gt;
rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' （这个包可能会有更新，所以可以登入这个网址去取它）重新安装这个部分，可能你会因为一些依赖关系遇到些问题，你可以先卸载他们&lt;br /&gt;
&lt;br /&gt;
在ubuntu10.04，你应该现安装‘qemu-arm-static’,使用命令：&lt;br /&gt;
apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
这个问题出现在ubuntu10.04当使用‘build’ 去创建i686rpm时.&lt;br /&gt;
&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
请修改 ‘’‘/usr/lib/build/configs/default.conf’‘’ 在preintall部分添加liblua --[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
这个问题出现在Ubuntu10.04当使用‘build’去创建i586包时&lt;br /&gt;
请使用''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
arch必须为'''i686'''&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
当创建armv7lrpm包时，修改/usr/lib/build/build 和/usr/lib/build/configs/meego-1.0.conf ,将文件中的armv7el改成armv7l。可能/usr/lib/build/Build.pm也需要改。&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/%E4%B8%8D%E9%9C%80%E8%A6%81obs%E7%9A%84%E6%9C%AC%E5%9C%B0build-_%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87</id>
		<title>不需要obs的本地build- 简体中文</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/%E4%B8%8D%E9%9C%80%E8%A6%81obs%E7%9A%84%E6%9C%AC%E5%9C%B0build-_%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87"/>
				<updated>2011-01-29T08:34:56Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: Created page with &amp;quot;这页主要是为了那些想尽量不与OBS后台连接的人-比如“尽量原始”  如果你只是想进行一次本地创建，那么你可能会使用“osc build&amp;quot;,因…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;这页主要是为了那些想尽量不与OBS后台连接的人-比如“尽量原始”&lt;br /&gt;
&lt;br /&gt;
如果你只是想进行一次本地创建，那么你可能会使用“osc build&amp;quot;,因为它基本可以为你做任何事。参照[[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== 使用build创建你的包 ==&lt;br /&gt;
&lt;br /&gt;
一种更简单的创建包的方法就是使用‘build’，它是OpenSUSE，MeeGo中创建时用到的的基础工具，你可以根据的linux系统从这得到它的二进制包：http://repo.meego.com/MeeGo/tools/repos/， 如果你的系统不再那，你可以从这获取它的源码包   http://www.gitorious.org/opensuse/build ，然后手动创建。&lt;br /&gt;
&lt;br /&gt;
安装上它过后（我相信你知道怎么在你的linux系统上安装一个包），你可以通过运行“build --help”查看帮助信息。	&lt;br /&gt;
&lt;br /&gt;
你必须以root权限来运行build。如果你的网络需要代理，请设置好代理环境变量，比如：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
如果你运行的是“sudo build ...” 并且你的网络需要proxy，请确保 sudo 继承了代理环境变量，你可以通过将下面的数据键入/etc/sudoers来实现	&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build 会核查rpm包的签名，所以你必须导入你要使用的仓库公钥，比如：&lt;br /&gt;
&lt;br /&gt;
对于 http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
你可以由此获得它的公钥：&lt;br /&gt;
 http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
这个命令将会创建一个cpio的Meego二进制包。&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
你也可以选择使用spec文件去创建它，就这种情况而言，build将会在当前工作目录中找你的源码tar包和patche文件。	&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build将会依据你的repo地址去缓存你的repo，所以对于相同的仓库，请每次使用相同的地址（地址末尾加/和不加/将得到不同的缓存目录），你可以使用多个:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
默认的缓存目录是/var/cache/build.你可以使用--cachedir选项来指定到其他目录。	&lt;br /&gt;
&lt;br /&gt;
默认的BUILDROOT目录是/var/tmp/build-root,你可以使用 --root选项指定一个或者更多的目录，一旦build完成了，你可以从BUILDROOT中获得你的二进制包，比如：	&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
你的cpio二进制包是	 /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
&lt;br /&gt;
== 疑难解答 （ARM） == &lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
碰到这个问题：&lt;br /&gt;
&lt;br /&gt;
在fedora13上使用‘build’去创建 armv7l 的rpm包时&lt;br /&gt;
其中可能的原因：可能是'qemu-arm'设置不正确。可以试试运行命令‘file /use/bin/qemu-arm’，如果他的结果显示‘dynamically linked’，那可能问题就在这，它本应该是‘statically linked’。 可以使用命令 '&lt;br /&gt;
rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' （这个包可能会有更新，所以可以登入这个网址去取它）重新安装这个部分，可能你会因为一些依赖关系遇到些问题，你可以先卸载他们&lt;br /&gt;
&lt;br /&gt;
在ubuntu10.04，你应该现安装‘qemu-arm-static’,使用命令：&lt;br /&gt;
apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
这个问题出现在ubuntu10.04当使用‘build’ 去创建i686rpm时.&lt;br /&gt;
&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
请修改 ‘’‘/usr/lib/build/configs/default.conf’‘’ 在preintall部分添加liblua --[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
这个问题出现在Ubuntu10.04当使用‘build’去创建i586包时&lt;br /&gt;
请使用''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
arch必须为'''i686'''&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
当创建armv7lrpm包时，修改/usr/lib/build/build 和/usr/lib/build/configs/meego-1.0.conf ,将文件中的armv7el改成armv7l。可能/usr/lib/build/Build.pm也需要改。&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2011-01-29T08:14:15Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Another language version of this page */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for people who want to avoid any connection with any OBS backend - ie &amp;quot;as raw as possible&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If you simply want to do a local build then you probably want &amp;quot;osc build&amp;quot; which does almost everything for you.&lt;br /&gt;
see [[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem :&lt;br /&gt;
&lt;br /&gt;
on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
  &lt;br /&gt;
on ubuntu10.04,you should install 'qemu-arm-static',use command:apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
This problem on Ubuntu 10.04 when using 'build' to create a i586 package. Please Use ''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
The arch must be '''i686'''.&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
when build a armv7l rpm,modify /usr/lib/build/build and /usr/lib/build/configs/meego-1.0.conf ,change armv7el to armv7l in these files,maybe /usr/lib/build/Build.pm also need change.&lt;br /&gt;
       &lt;br /&gt;
&lt;br /&gt;
== Another language version of this page ==&lt;br /&gt;
&lt;br /&gt;
* [[不需要obs的本地创建 - 简体中文]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2011-01-29T08:10:16Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* chroot: cannot run command `rpm' */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for people who want to avoid any connection with any OBS backend - ie &amp;quot;as raw as possible&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If you simply want to do a local build then you probably want &amp;quot;osc build&amp;quot; which does almost everything for you.&lt;br /&gt;
see [[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem :&lt;br /&gt;
&lt;br /&gt;
on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
  &lt;br /&gt;
on ubuntu10.04,you should install 'qemu-arm-static',use command:apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
This problem on Ubuntu 10.04 when using 'build' to create a i586 package. Please Use ''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
The arch must be '''i686'''.&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
when build a armv7l rpm,modify /usr/lib/build/build and /usr/lib/build/configs/meego-1.0.conf ,change armv7el to armv7l in these files,maybe /usr/lib/build/Build.pm also need change.&lt;br /&gt;
       &lt;br /&gt;
&lt;br /&gt;
== Another language version of this page ==&lt;br /&gt;
&lt;br /&gt;
* [[不通过obs的本地创建 - 简体中文]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2011-01-28T07:20:11Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Chinese version */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for people who want to avoid any connection with any OBS backend - ie &amp;quot;as raw as possible&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If you simply want to do a local build then you probably want &amp;quot;osc build&amp;quot; which does almost everything for you.&lt;br /&gt;
see [[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem :&lt;br /&gt;
&lt;br /&gt;
on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
  &lt;br /&gt;
on ubuntu10.04,you should install 'qemu-arm-static',use command:apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
This problem on Ubuntu 10.04 when using 'build' to create a i586 package. Please Use ''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
The arch must be '''i686'''.&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
when build a armv7l rpm,modify /usr/lib/build/build and /usr/lib/build/configs/meego-1.0.conf ,change armv7el to armv7l in these files,maybe /usr/lib/build/Build.pm also need change.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
         &lt;br /&gt;
[[Local_Build_Without_OBS_Needed/chinese]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2011-01-28T07:19:34Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* chroot: cannot run command `rpm' */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for people who want to avoid any connection with any OBS backend - ie &amp;quot;as raw as possible&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If you simply want to do a local build then you probably want &amp;quot;osc build&amp;quot; which does almost everything for you.&lt;br /&gt;
see [[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem :&lt;br /&gt;
&lt;br /&gt;
on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
  &lt;br /&gt;
on ubuntu10.04,you should install 'qemu-arm-static',use command:apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
This problem on Ubuntu 10.04 when using 'build' to create a i586 package. Please Use ''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
The arch must be '''i686'''.&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
when build a armv7l rpm,modify /usr/lib/build/build and /usr/lib/build/configs/meego-1.0.conf ,change armv7el to armv7l in these files,maybe /usr/lib/build/Build.pm also need change.&lt;br /&gt;
&lt;br /&gt;
====Chinese version ====           &lt;br /&gt;
[[Local_Build_Without_OBS_Needed/chinese]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2011-01-28T07:18:44Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* chroot: cannot run command `rpm' */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for people who want to avoid any connection with any OBS backend - ie &amp;quot;as raw as possible&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If you simply want to do a local build then you probably want &amp;quot;osc build&amp;quot; which does almost everything for you.&lt;br /&gt;
see [[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem :&lt;br /&gt;
&lt;br /&gt;
on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
  &lt;br /&gt;
on ubuntu10.04,you should install 'qemu-arm-static',use command:apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
This problem on Ubuntu 10.04 when using 'build' to create a i586 package. Please Use ''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
The arch must be '''i686'''.&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
when build a armv7l rpm,modify /usr/lib/build/build and /usr/lib/build/configs/meego-1.0.conf ,change armv7el to armv7l in these files,maybe /usr/lib/build/Build.pm also need change.&lt;br /&gt;
&lt;br /&gt;
Chinese version ：            &lt;br /&gt;
[[Local_Build_Without_OBS_Needed/chinese]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2011-01-28T07:18:03Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* chroot: cannot run command `rpm' */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for people who want to avoid any connection with any OBS backend - ie &amp;quot;as raw as possible&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If you simply want to do a local build then you probably want &amp;quot;osc build&amp;quot; which does almost everything for you.&lt;br /&gt;
see [[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem :&lt;br /&gt;
&lt;br /&gt;
on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
  &lt;br /&gt;
on ubuntu10.04,you should install 'qemu-arm-static',use command:apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
This problem on Ubuntu 10.04 when using 'build' to create a i586 package. Please Use ''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
The arch must be '''i686'''.&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
when build a armv7l rpm,modify /usr/lib/build/build and /usr/lib/build/configs/meego-1.0.conf ,change armv7el to armv7l in these files,maybe /usr/lib/build/Build.pm also need change.&lt;br /&gt;
&lt;br /&gt;
Chinese version ：            &lt;br /&gt;
[[chinese]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2011-01-28T07:17:01Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* chroot: cannot run command `rpm' */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for people who want to avoid any connection with any OBS backend - ie &amp;quot;as raw as possible&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If you simply want to do a local build then you probably want &amp;quot;osc build&amp;quot; which does almost everything for you.&lt;br /&gt;
see [[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem :&lt;br /&gt;
&lt;br /&gt;
on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
  &lt;br /&gt;
on ubuntu10.04,you should install 'qemu-arm-static',use command:apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
This problem on Ubuntu 10.04 when using 'build' to create a i586 package. Please Use ''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
The arch must be '''i686'''.&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
when build a armv7l rpm,modify /usr/lib/build/build and /usr/lib/build/configs/meego-1.0.conf ,change armv7el to armv7l in these files,maybe /usr/lib/build/Build.pm also need change.&lt;br /&gt;
&lt;br /&gt;
Chinese version ：            &lt;br /&gt;
Local_Build_Without_OBS_Needed/chinese&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2011-01-28T07:15:06Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* chroot: cannot run command `rpm' */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for people who want to avoid any connection with any OBS backend - ie &amp;quot;as raw as possible&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If you simply want to do a local build then you probably want &amp;quot;osc build&amp;quot; which does almost everything for you.&lt;br /&gt;
see [[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem :&lt;br /&gt;
&lt;br /&gt;
on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
  &lt;br /&gt;
on ubuntu10.04,you should install 'qemu-arm-static',use command:apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
This problem on Ubuntu 10.04 when using 'build' to create a i586 package. Please Use ''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
The arch must be '''i686'''.&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
when build a armv7l rpm,modify /usr/lib/build/build and /usr/lib/build/configs/meego-1.0.conf ,change armv7el to armv7l in these files,maybe /usr/lib/build/Build.pm also need change.&lt;br /&gt;
&lt;br /&gt;
Chinese version ：            &lt;br /&gt;
http://wiki.meego.com/index.php?title=Local_Build_Without_OBS_Needed/chinese&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2011-01-28T07:13:55Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for people who want to avoid any connection with any OBS backend - ie &amp;quot;as raw as possible&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If you simply want to do a local build then you probably want &amp;quot;osc build&amp;quot; which does almost everything for you.&lt;br /&gt;
see [[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem :&lt;br /&gt;
&lt;br /&gt;
on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
  &lt;br /&gt;
on ubuntu10.04,you should install 'qemu-arm-static',use command:apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
This problem on Ubuntu 10.04 when using 'build' to create a i586 package. Please Use ''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
The arch must be '''i686'''.&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
when build a armv7l rpm,modify /usr/lib/build/build and /usr/lib/build/configs/meego-1.0.conf ,change armv7el to armv7l in these files,maybe /usr/lib/build/Build.pm also need change.&lt;br /&gt;
            &lt;br /&gt;
http://wiki.meego.com/index.php?title=Local_Build_Without_OBS_Needed/chinese&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed/chinese</id>
		<title>Local Build Without OBS Needed/chinese</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed/chinese"/>
				<updated>2011-01-28T07:10:27Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
这页主要是为了那些想尽量不与OBS后台连接的人-比如“尽量原始”&lt;br /&gt;
&lt;br /&gt;
如果你只是想进行一次本地创建，那么你可能会使用“osc build&amp;quot;,因为它基本可以为你做任何事。参照[[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== 使用build创建你的包 ==&lt;br /&gt;
&lt;br /&gt;
一种更简单的创建包的方法就是使用‘build’，它是OpenSUSE，MeeGo中创建时用到的的基础工具&lt;br /&gt;
&lt;br /&gt;
你可以根据的linux系统从这得到它的二进制包：http://repo.meego.com/MeeGo/tools/repos/，如果你的系统不再那，你可以从这获取它的源码包 http://www.gitorious.org/opensuse/build ，然后手动创建。&lt;br /&gt;
&lt;br /&gt;
安装上它过后（我相信你知道怎么在你的linux系统上安装一个包），你可以通过运行“build --help”查看帮助信息。	&lt;br /&gt;
&lt;br /&gt;
你必须以root权限来运行build。如果你的网络需要代理，请设置好代理环境变量，比如：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
如果你运行的是“sudo build ...” 并且你的网络需要proxy，请确保 sudo 继承了代理环境变量，你可以通过将下面的数据键入/etc/sudoers来实现	&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build 会核查rpm包的签名，所以你必须导入你要使用的仓库公钥，比如：&lt;br /&gt;
&lt;br /&gt;
对于 http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
你可以由此获得它的公钥：&lt;br /&gt;
 http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
这个命令将会创建一个cpio的Meego二进制包。&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
你也可以选择使用spec文件去创建它，就这种情况而言，build将会在当前工作目录中找你的源码tar包和patche文件。	&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build将会依据你的repo地址去缓存你的repo，所以对于相同的仓库，请每次使用相同的地址（地址末尾加/和不加/将得到不同的缓存目录），你可以使用多个:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
默认的缓存目录是/var/cache/build.你可以使用--cachedir选项来指定到其他目录。	&lt;br /&gt;
&lt;br /&gt;
默认的BUILDROOT目录是/var/tmp/build-root,你可以使用 --root选项指定一个或者更多的目录，一旦build完成了，你可以从BUILDROOT中获得你的二进制包，比如：	&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
你的cpio二进制包是	 /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
&lt;br /&gt;
== 疑难解答 （ARM） == &lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
碰到这个问题：&lt;br /&gt;
&lt;br /&gt;
在fedora13上使用‘build’去创建 armv7l 的rpm包时&lt;br /&gt;
其中可能的原因：可能是'qemu-arm'设置不正确。可以试试运行命令‘file /use/bin/qemu-arm’，如果他的结果显示‘dynamically linked’，那可能问题就在这，它本应该是‘statically linked’。 可以使用命令 '&lt;br /&gt;
rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' （这个包可能会有更新，所以可以登入这个网址去取它）重新安装这个部分，可能你会因为一些依赖关系遇到些问题，你可以先卸载他们&lt;br /&gt;
&lt;br /&gt;
在ubuntu10.04，你应该现安装‘qemu-arm-static’,使用命令：&lt;br /&gt;
apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
这个问题出现在ubuntu10.04当使用‘build’ 去创建i686rpm时.&lt;br /&gt;
&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
请修改 ‘’‘/usr/lib/build/configs/default.conf’‘’ 在preintall部分添加liblua --[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
这个问题出现在Ubuntu10.04当使用‘build’去创建i586包时&lt;br /&gt;
请使用''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
arch必须为'''i686'''&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
当创建armv7lrpm包时，修改/usr/lib/build/build 和/usr/lib/build/configs/meego-1.0.conf ,将文件中的armv7el改成armv7l。可能/usr/lib/build/Build.pm也需要改。&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed/chinese</id>
		<title>Local Build Without OBS Needed/chinese</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed/chinese"/>
				<updated>2011-01-28T07:08:16Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: 翻译&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;这也主要是为了那些想尽量不与OBS后台连接的人-比如“尽量原始”&lt;br /&gt;
&lt;br /&gt;
如果你只是想进行一次本地创建，那么你可能会使用“osc build&amp;quot;,因为它基本可以为你做任何事。参照[[Build_Infrastructure/Packagers_Developers]]&lt;br /&gt;
&lt;br /&gt;
== 使用build创建你的包 ==&lt;br /&gt;
&lt;br /&gt;
一种更简单的创建包的方法就是使用‘build’，它是OpenSUSE，MeeGo中创建时用到的的基础工具&lt;br /&gt;
&lt;br /&gt;
你可以根据的linux系统从这得到它的二进制包：http://repo.meego.com/MeeGo/tools/repos/，如果你的系统不再那，你可以从这获取它的源码包 http://www.gitorious.org/opensuse/build ，然后手动创建。&lt;br /&gt;
&lt;br /&gt;
安装上它过后（我相信你知道怎么在你的linux系统上安装一个包），你可以通过运行“build --help”查看帮助信息。	&lt;br /&gt;
&lt;br /&gt;
你必须以root权限来运行build。如果你的网络需要代理，请设置好代理环境变量，比如：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
如果你运行的是“sudo build ...” 并且你的网络需要proxy，请确保 sudo 继承了代理环境变量，你可以通过将下面的数据键入/etc/sudoers来实现	&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build 会核查rpm包的签名，所以你必须导入你要使用的仓库公钥，比如：&lt;br /&gt;
&lt;br /&gt;
对于 http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
你可以由此获得它的公钥：&lt;br /&gt;
 http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
这个命令将会创建一个cpio的Meego二进制包。&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
你也可以选择使用spec文件去创建它，就这种情况而言，build将会在当前工作目录中找你的源码tar包和patche文件。	&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build将会依据你的repo地址去缓存你的repo，所以对于相同的仓库，请每次使用相同的地址（地址末尾加/和不加/将得到不同的缓存目录），你可以使用多个:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
默认的缓存目录是/var/cache/build.你可以使用--cachedir选项来指定到其他目录。	&lt;br /&gt;
&lt;br /&gt;
默认的BUILDROOT目录是/var/tmp/build-root,你可以使用 --root选项指定一个或者更多的目录，一旦build完成了，你可以从BUILDROOT中获得你的二进制包，比如：	&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
你的cpio二进制包是	 /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
&lt;br /&gt;
== 疑难解答 （ARM） == &lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
碰到这个问题：&lt;br /&gt;
&lt;br /&gt;
在fedora13上使用‘build’去创建 armv7l 的rpm包时&lt;br /&gt;
其中可能的原因：可能是'qemu-arm'设置不正确。可以试试运行命令‘file /use/bin/qemu-arm’，如果他的结果显示‘dynamically linked’，那可能问题就在这，它本应该是‘statically linked’。 可以使用命令 '&lt;br /&gt;
rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' （这个包可能会有更新，所以可以登入这个网址去取它）重新安装这个部分，可能你会因为一些依赖关系遇到些问题，你可以先卸载他们&lt;br /&gt;
&lt;br /&gt;
在ubuntu10.04，你应该现安装‘qemu-arm-static’,使用命令：&lt;br /&gt;
apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
这个问题出现在ubuntu10.04当使用‘build’ 去创建i686rpm时.&lt;br /&gt;
&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
请修改 ‘’‘/usr/lib/build/configs/default.conf’‘’ 在preintall部分添加liblua --[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Nothing Provides ===&lt;br /&gt;
这个问题出现在Ubuntu10.04当使用‘build’去创建i586包时&lt;br /&gt;
请使用''build --repository http://repo.meego.com/MeeGo/builds/xxx/core/repos/ia32/packages/ --arch i686 xxxx.src.rpm''&lt;br /&gt;
arch必须为'''i686'''&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
当创建armv7lrpm包时，修改/usr/lib/build/build 和/usr/lib/build/configs/meego-1.0.conf ,将文件中的armv7el改成armv7l。可能/usr/lib/build/Build.pm也需要改。&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Build_Infrastructure/Sysadmin_Distro/OBS_setup_openSUSE114</id>
		<title>Build Infrastructure/Sysadmin Distro/OBS setup openSUSE114</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Build_Infrastructure/Sysadmin_Distro/OBS_setup_openSUSE114"/>
				<updated>2011-01-26T01:21:25Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; Please check http://gitorious.org/opensuse/build-service/blobs/master/dist/README.SETUP&lt;br /&gt;
 for the latest setup instructions!&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
These steps are to setup Open Build Service 1.7.5 on an openSuSE 11.2 installation.  Currently this document describes how to setup an evaluation/test setup and is not meant as a production setup.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Most users won't need to install their own OBS and can just use an account on a publicly accessible OBS.  Once public access is allowed to the global MeeGo OBS, there will be a link to obtain access.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
There are cases where vendors may rather have full control of their builds and keep source private due to licensing restrictions, etc.  These instructions are for these special cases.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
MeeGo will switch to version 2.1 of the Build Service which is to be released soon. These instructions will be updated for the new version as soon as possible.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Add Repositories&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
First, we have to add the openSUSE:Tools repository to zypper for qemu-svn and other updated tools.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      cd /etc/zypp/repos.d/;&lt;br /&gt;
      wget http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_11.2/openSUSE:Tools.repo&lt;br /&gt;
      zypper ref&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Accept the trust key.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Setup the Client&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt;Install the Client Packages&amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*For obs worker:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      zypper in obs-worker qemu-svn mount-static bash-static&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Point To The Server&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Edit the file /etc/sysconfig/obs-worker in order to point to correct repository server. (The example server is 192.168.1.1)&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # vi /etc/sysconfig/obs-worker&lt;br /&gt;
      OBS_SRC_SERVER=&amp;quot;192.168.1.1:5352&amp;quot;&lt;br /&gt;
      OBS_REPO_SERVERS=&amp;quot;192.168.1.1:5252&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Start the Client&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Start the worker service&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chkconfig --add obsworker&lt;br /&gt;
      rcobsworker start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Setup the server&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Install the Server packages&amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*For server:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      zypper in obs-server obs-signd obs-utils createrepo nfs-client obs-api memcached lighttpd&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;MySQL Setup&amp;lt;/h3&amp;gt;&lt;br /&gt;
Start daemon by default:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chkconfig --add mysql&lt;br /&gt;
      rcmysql start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Secure the installation&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      /usr/bin/mysql_secure_installation&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Create the databases:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      mysql -u root -p&lt;br /&gt;
      mysql&amp;gt; create database api_production;&lt;br /&gt;
      mysql&amp;gt; create database webui_production;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add the obs user for these databases (substitute the correct password in):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      GRANT all privileges&lt;br /&gt;
            ON api_production.* &lt;br /&gt;
            TO 'obs'@'%', 'obs'@'localhost' IDENTIFIED BY '************';&lt;br /&gt;
      GRANT all privileges&lt;br /&gt;
            ON webui_production.* &lt;br /&gt;
            TO 'obs'@'%', 'obs'@'localhost' IDENTIFIED BY '************';&lt;br /&gt;
      FLUSH PRIVILEGES;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, configure OBS to use MySQL, first the API server.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      vi /srv/www/obs/api/config/database.yml&lt;br /&gt;
      #change the production section&lt;br /&gt;
      production:&lt;br /&gt;
        adapter: mysql&lt;br /&gt;
        database: api_production&lt;br /&gt;
        username: obs&lt;br /&gt;
        password: ************&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
And setup the webui to use MySQL...&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      vi /srv/www/obs/webui/config/database.yml&lt;br /&gt;
      #change the production section&lt;br /&gt;
      production:&lt;br /&gt;
        adapter: mysql&lt;br /&gt;
        database: webui_production&lt;br /&gt;
        username: obs&lt;br /&gt;
        password: ************&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Populate the database&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      cd /srv/www/obs/api/&lt;br /&gt;
      RAILS_ENV=&amp;quot;production&amp;quot;  rake db:setup&lt;br /&gt;
 &lt;br /&gt;
      cd /srv/www/obs/webui/&lt;br /&gt;
      RAILS_ENV=&amp;quot;production&amp;quot; rake db:setup&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
If this fails, check /srv/www/obs/api/config/environments/production.rb and /srv/www/obs/webui/config/environments/production.rb for configuration of the SOURCE_HOST and FRONTEND_HOST.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Setup lighttpd for webui&amp;lt;/h3&amp;gt;&lt;br /&gt;
Make sure vhosts are enabled by uncommenting the following line:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       # vi /etc/lighttpd/lighttpd.conf&lt;br /&gt;
       include_shell &amp;quot;cat /etc/lighttpd/vhosts.d/*.conf&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Setup the regular webui on 80, api on 81, and 82 is the repository.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       vi /etc/lighttpd/vhosts.d/obs.conf&lt;br /&gt;
       $SERVER[&amp;quot;socket&amp;quot;] == &amp;quot;:80&amp;quot; {&lt;br /&gt;
         rails_app   = &amp;quot;webui&amp;quot;&lt;br /&gt;
         rails_root  = &amp;quot;/srv/www/obs/webui&amp;quot;&lt;br /&gt;
         rails_procs = 3&lt;br /&gt;
         # production/development are typical values here&lt;br /&gt;
         rails_mode  = &amp;quot;production&amp;quot;&lt;br /&gt;
         log_root = &amp;quot;/srv/www/obs/webui/log&amp;quot;&lt;br /&gt;
         include &amp;quot;vhosts.d/rails.inc&amp;quot;&lt;br /&gt;
       }&lt;br /&gt;
       $SERVER[&amp;quot;socket&amp;quot;] == &amp;quot;:81&amp;quot; {&lt;br /&gt;
         rails_app   = &amp;quot;api&amp;quot;&lt;br /&gt;
         rails_root  = &amp;quot;/srv/www/obs/api&amp;quot;&lt;br /&gt;
         rails_procs = 3&lt;br /&gt;
         # production/development are typical values here&lt;br /&gt;
         rails_mode  = &amp;quot;production&amp;quot;&lt;br /&gt;
         log_root = &amp;quot;/srv/www/obs/api/log&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
         include &amp;quot;vhosts.d/rails.inc&amp;quot;&lt;br /&gt;
       }&lt;br /&gt;
       $SERVER[&amp;quot;socket&amp;quot;] == &amp;quot;:82&amp;quot; {&lt;br /&gt;
         server.name = &amp;quot;192.168.1.1&amp;quot;&lt;br /&gt;
         server.document-root = &amp;quot;/srv/obs/repos/&amp;quot;&lt;br /&gt;
         dir-listing.activate = &amp;quot;enable&amp;quot;&lt;br /&gt;
       }&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
lighttpd requires some extra modules to be enabled: mod_access, mod_rewrite, mod_magnet, and mod_fastcgi. Do so by editing /etc/lighttpd/modules.conf:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # vi /etc/lighttpd/modules.conf&lt;br /&gt;
    server.modules = (&lt;br /&gt;
      &amp;quot;mod_access&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_alias&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_auth&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_evasive&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_redirect&amp;quot;,&lt;br /&gt;
      &amp;quot;mod_rewrite&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_setenv&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_usertrack&amp;quot;,&lt;br /&gt;
    )&lt;br /&gt;
 &lt;br /&gt;
    ##&lt;br /&gt;
    ## mod_magnet&lt;br /&gt;
    ##&lt;br /&gt;
    include &amp;quot;conf.d/magnet.conf&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
    ##&lt;br /&gt;
    ## FastCGI (mod_fastcgi)&lt;br /&gt;
    ##&lt;br /&gt;
    include &amp;quot;conf.d/fastcgi.conf&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
You need also to configure /srv/www/obs/webui/config/environments/production.rb to point to correct server names:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # vi /srv/www/obs/webui/config/environments/production.rb&lt;br /&gt;
      FRONTEND_HOST = &amp;quot;192.168.1.1&amp;quot;&lt;br /&gt;
      FRONTEND_PORT = 81&lt;br /&gt;
      FRONTEND_PROTOCOL = 'http'&lt;br /&gt;
      BUGZILLA_HOST = nil&lt;br /&gt;
      DOWNLOAD_URL = &amp;quot;http://192.168.1.1:82&amp;quot;&lt;br /&gt;
      ICHAIN_MODE = &amp;quot;off&amp;quot;&lt;br /&gt;
      BASE_NAMESPACE = nil&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Do the same for /srv/www/obs/api/config/environments/production.rb. As soon your backend is not on the same machine as the api (frontend), change the following:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # vi /srv/www/obs/api/config/environments/production.rb&lt;br /&gt;
      SOURCE_HOST = &amp;quot;192.168.1.1&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Add the server to start by default.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chkconfig --add memcached&lt;br /&gt;
      chkconfig --add lighttpd&lt;br /&gt;
      chkconfig --add obsapidelayed&lt;br /&gt;
      chkconfig --add obswebuidelayed&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
ligthttpd user and group need to be the onwer of api and webui dirs (as well as log and tmp):&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chown -R lighttpd.lighttpd /srv/www/obs/{api,webui}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;BSConfig.pm&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
The file &amp;lt;i&amp;gt;/usr/lib/obs/server/BSConfig.pm&amp;lt;/i&amp;gt; is used to configure several settings for the Build Service.  One of the major components is setting up the $hostname variable to the correct value.  Currently I have this set to the IP address of the server.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       my $hostname = '192.168.1.1';&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
The list of directories in /srv/obs/repos/ is the repositories, so I changed the $repodownload:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       our $repodownload = &amp;quot;http://$hostname:82/&amp;quot;;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Verification&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
At this point you should be able to open a browser and go to your server and login to OBS.  Port 80 should be the webui, port 81 should be the api, and port 82 should be the repository directory.  The default username/password is Admin/opensuse.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt;Start By Default&amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The OBS should start automatically, so they should be added to chkconfig to do so:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       chkconfig --add obsrepserver obssrcserver obsscheduler obsdispatcher obspublisher obswarden obssigner&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Setting up Cross Compile&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt;Configure build types&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
To setup cross compile, add the appropriate machine types to /etc/sysconfig/obs-server.  For example, the following will enable ARM builds.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       # vi /etc/sysconfig/obs-server&lt;br /&gt;
       OBS_SCHEDULER_ARCHITECTURES=&amp;quot;i586 armv5el armv7el“&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Cloning Repositories&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;prj and prjconf&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;The project settings and the project config is an important part of the project and should be copied to the local project setup.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      osc -A &amp;lt;remote API URL&amp;gt; meta prj &amp;lt;repository name&amp;gt; &amp;gt; prj.txt&lt;br /&gt;
      osc -A &amp;lt;remote API URL&amp;gt; meta prjconf &amp;lt;repository name&amp;gt; &amp;gt; prjconf.txt&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Modify the prj.txt file to name valid users in the userid fields.  Once modified, the settings and configuration can be applied to the local project.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      osc -A &amp;lt;local API URL&amp;gt; meta prj &amp;lt;repository name&amp;gt; -F prj.txt&lt;br /&gt;
      osc -A &amp;lt;local API URL&amp;gt; meta prjconf &amp;lt;repository name&amp;gt; -F prjconf.txt&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Mirror&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
obs_mirror_project (/usr/sbin/obs_mirror_project) is used to copy an external OBS project.  The script needed to be modified to use build.meego.com as apposed to the hard coded download.opensuse.org site. You need an login to build.meego.com to execute this script.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
/usr/sbin/obs_mirror_project &amp;lt;repository name&amp;gt; &amp;lt;type&amp;gt; &amp;lt;arch&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Rescan Repository&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Once the download of the project is complete, you have to rescan the local repository.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
/usr/lib/obs/server/bs_admin --rescan-repository &amp;lt;repository name&amp;gt; &amp;lt;type&amp;gt; &amp;lt;arch&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Troubleshooting&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Here are common issues that have been seen and how to resolve them.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;HTTP Error 500&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Check &amp;lt;b&amp;gt;/srv/www/obs/api/config/environments/production.rb&amp;lt;/b&amp;gt;&lt;br /&gt;
 and &amp;lt;b&amp;gt;/srv/www/obs/webui/config/environments/production.rb&amp;lt;/b&amp;gt; for configuration of the &lt;br /&gt;
&amp;lt;b&amp;gt;SOURCE_HOST&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;FRONTEND_HOST&amp;lt;/b&amp;gt;.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt;Cannot load person data for Admin in application_helper&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Make sure you set the permissions on the api and webui directories.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chown -R lighttpd.lighttpd /srv/www/obs/{api,webui}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
If this doesn't work then try to recreate the databases:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # mysql -u root -p&lt;br /&gt;
      mysql&amp;gt; drop database api_production;&lt;br /&gt;
      mysql&amp;gt; drop database webui_production;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Rerun the mysql database setup from above and re-run rake.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;h2&amp;gt;External Links&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
[http://wiki.maemo.org/OpenSuse_Build_Service/Installation Maemo OBS Installation]&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
[http://wiki.maemo.org/OpenSuse_Build_Service/Fremantle_Setup Maemo Fremantel Setup]&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
[[User:Liam | Liam]]&lt;br /&gt;
&lt;br /&gt;
[[User:Dl9pf | Dl9pf]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Build Infrastructure]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Build_Infrastructure/Sysadmin_Distro/OBS_setup_openSUSE114</id>
		<title>Build Infrastructure/Sysadmin Distro/OBS setup openSUSE114</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Build_Infrastructure/Sysadmin_Distro/OBS_setup_openSUSE114"/>
				<updated>2011-01-18T02:21:27Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; Please check http://gitorious.org/opensuse/build-service/blobs/master/dist/README.SETUP&lt;br /&gt;
 for the latest setup instructions!&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
These steps are to setup Open Build Service 1.7.5 on an openSuSE 11.2 installation.  Currently this document describes how to setup an evaluation/test setup and is not meant as a production setup.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Most users won't need to install their own OBS and can just use an account on a publicly accessible OBS.  Once public access is allowed to the global MeeGo OBS, there will be a link to obtain access.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
There are cases where vendors may rather have full control of their builds and keep source private due to licensing restrictions, etc.  These instructions are for these special cases.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
MeeGo will switch to version 2.1 of the Build Service which is to be released soon. These instructions will be updated for the new version as soon as possible.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Add Repositories&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
First, we have to add the openSUSE:Tools repository to zypper for qemu-svn and other updated tools.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      cd /etc/zypp/repos.d/;&lt;br /&gt;
      wget http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_11.2/openSUSE:Tools.repo&lt;br /&gt;
      zypper ref&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Accept the trust key.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Setup the Client&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt;Install the Client Packages&amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*For obs worker:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      zypper in obs-worker qemu-svn mount-static bash-static&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Point To The Server&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Edit the file /etc/sysconfig/obs-worker in order to point to correct repository server. (The example server is 192.168.1.1)&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # vi /etc/sysconfig/obs-worker&lt;br /&gt;
      OBS_SRC_SERVER=&amp;quot;192.168.1.1:5352&amp;quot;&lt;br /&gt;
      OBS_REPO_SERVERS=&amp;quot;192.168.1.1:5252&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Start the Client&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Start the worker service&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chkconfig --add obsworker&lt;br /&gt;
      rcobsworker start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Setup the server&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Install the Server packages&amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*For server:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      zypper in obs-server obs-signd obs-utils createrepo nfs-client obs-api memcached lighttpd&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;MySQL Setup&amp;lt;/h3&amp;gt;&lt;br /&gt;
Start daemon by default:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chkconfig --add mysql&lt;br /&gt;
      rcmysql start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Secure the installation&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      /usr/bin/mysql_secure_installation&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Create the databases:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      mysql -u root -p&lt;br /&gt;
      mysql&amp;gt; create database api_production;&lt;br /&gt;
      mysql&amp;gt; create database webui_production;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add the obs user for these databases (substitute the correct password in):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      GRANT all privileges&lt;br /&gt;
            ON api_production.* &lt;br /&gt;
            TO 'obs'@'%', 'obs'@'localhost' IDENTIFIED BY '************';&lt;br /&gt;
      GRANT all privileges&lt;br /&gt;
            ON webui_production.* &lt;br /&gt;
            TO 'obs'@'%', 'obs'@'localhost' IDENTIFIED BY '************';&lt;br /&gt;
      FLUSH PRIVILEGES;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, configure OBS to use MySQL, first the API server.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      vi /srv/www/obs/api/config/database.yml&lt;br /&gt;
      #change the production section&lt;br /&gt;
      production:&lt;br /&gt;
        adapter: mysql&lt;br /&gt;
        database: api_production&lt;br /&gt;
        username: obs&lt;br /&gt;
        password: ************&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
And setup the webui to use MySQL...&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      vi /srv/www/obs/webui/config/database.yml&lt;br /&gt;
      #change the production section&lt;br /&gt;
      production:&lt;br /&gt;
        adapter: mysql&lt;br /&gt;
        database: webui_production&lt;br /&gt;
        username: obs&lt;br /&gt;
        password: ************&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Populate the database&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      cd /srv/www/obs/api/&lt;br /&gt;
      RAILS_ENV=&amp;quot;production&amp;quot; &lt;br /&gt;
      rake db:setup&lt;br /&gt;
 &lt;br /&gt;
      cd /srv/www/obs/webui/&lt;br /&gt;
      RAILS_ENV=&amp;quot;production&amp;quot; &lt;br /&gt;
      rake db:setup&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
If this fails, check /srv/www/obs/api/config/environments/production.rb and /srv/www/obs/webui/config/environments/production.rb for configuration of the SOURCE_HOST and FRONTEND_HOST.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Setup lighttpd for webui&amp;lt;/h3&amp;gt;&lt;br /&gt;
Make sure vhosts are enabled by uncommenting the following line:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       # vi /etc/lighttpd/lighttpd.conf&lt;br /&gt;
       include_shell &amp;quot;cat /etc/lighttpd/vhosts.d/*.conf&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Setup the regular webui on 80, api on 81, and 82 is the repository.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       vi /etc/lighttpd/vhosts.d/obs.conf&lt;br /&gt;
       $SERVER[&amp;quot;socket&amp;quot;] == &amp;quot;:80&amp;quot; {&lt;br /&gt;
         rails_app   = &amp;quot;webui&amp;quot;&lt;br /&gt;
         rails_root  = &amp;quot;/srv/www/obs/webui&amp;quot;&lt;br /&gt;
         rails_procs = 3&lt;br /&gt;
         # production/development are typical values here&lt;br /&gt;
         rails_mode  = &amp;quot;production&amp;quot;&lt;br /&gt;
         log_root = &amp;quot;/srv/www/obs/webui/log&amp;quot;&lt;br /&gt;
         include &amp;quot;vhosts.d/rails.inc&amp;quot;&lt;br /&gt;
       }&lt;br /&gt;
       $SERVER[&amp;quot;socket&amp;quot;] == &amp;quot;:81&amp;quot; {&lt;br /&gt;
         rails_app   = &amp;quot;api&amp;quot;&lt;br /&gt;
         rails_root  = &amp;quot;/srv/www/obs/api&amp;quot;&lt;br /&gt;
         rails_procs = 3&lt;br /&gt;
         # production/development are typical values here&lt;br /&gt;
         rails_mode  = &amp;quot;production&amp;quot;&lt;br /&gt;
         log_root = &amp;quot;/srv/www/obs/api/log&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
         include &amp;quot;vhosts.d/rails.inc&amp;quot;&lt;br /&gt;
       }&lt;br /&gt;
       $SERVER[&amp;quot;socket&amp;quot;] == &amp;quot;:82&amp;quot; {&lt;br /&gt;
         server.name = &amp;quot;192.168.1.1&amp;quot;&lt;br /&gt;
         server.document-root = &amp;quot;/srv/obs/repos/&amp;quot;&lt;br /&gt;
         dir-listing.activate = &amp;quot;enable&amp;quot;&lt;br /&gt;
       }&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
lighttpd requires some extra modules to be enabled: mod_access, mod_rewrite, mod_magnet, and mod_fastcgi. Do so by editing /etc/lighttpd/modules.conf:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # vi /etc/lighttpd/modules.conf&lt;br /&gt;
    server.modules = (&lt;br /&gt;
      &amp;quot;mod_access&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_alias&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_auth&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_evasive&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_redirect&amp;quot;,&lt;br /&gt;
      &amp;quot;mod_rewrite&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_setenv&amp;quot;,&lt;br /&gt;
    #  &amp;quot;mod_usertrack&amp;quot;,&lt;br /&gt;
    )&lt;br /&gt;
 &lt;br /&gt;
    ##&lt;br /&gt;
    ## mod_magnet&lt;br /&gt;
    ##&lt;br /&gt;
    include &amp;quot;conf.d/magnet.conf&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
    ##&lt;br /&gt;
    ## FastCGI (mod_fastcgi)&lt;br /&gt;
    ##&lt;br /&gt;
    include &amp;quot;conf.d/fastcgi.conf&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
You need also to configure /srv/www/obs/webui/config/environments/production.rb to point to correct server names:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # vi /srv/www/obs/webui/config/environments/production.rb&lt;br /&gt;
      FRONTEND_HOST = &amp;quot;192.168.1.1&amp;quot;&lt;br /&gt;
      FRONTEND_PORT = 81&lt;br /&gt;
      FRONTEND_PROTOCOL = 'http'&lt;br /&gt;
      BUGZILLA_HOST = nil&lt;br /&gt;
      DOWNLOAD_URL = &amp;quot;http://192.168.1.1:82&amp;quot;&lt;br /&gt;
      ICHAIN_MODE = &amp;quot;off&amp;quot;&lt;br /&gt;
      BASE_NAMESPACE = nil&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Do the same for /srv/www/obs/api/config/environments/production.rb. As soon your backend is not on the same machine as the api (frontend), change the following:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # vi /srv/www/obs/api/config/environments/production.rb&lt;br /&gt;
      SOURCE_HOST = &amp;quot;192.168.1.1&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Add the server to start by default.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chkconfig --add memcached&lt;br /&gt;
      chkconfig --add lighttpd&lt;br /&gt;
      chkconfig --add obsapidelayed&lt;br /&gt;
      chkconfig --add obswebuidelayed&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
ligthttpd user and group need to be the onwer of api and webui dirs (as well as log and tmp):&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chown -R lighttpd.lighttpd /srv/www/obs/{api,webui}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;BSConfig.pm&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
The file &amp;lt;i&amp;gt;/usr/lib/obs/server/BSConfig.pm&amp;lt;/i&amp;gt; is used to configure several settings for the Build Service.  One of the major components is setting up the $hostname variable to the correct value.  Currently I have this set to the IP address of the server.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       my $hostname = '192.168.1.1';&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
The list of directories in /srv/obs/repos/ is the repositories, so I changed the $repodownload:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       our $repodownload = &amp;quot;http://$hostname:82/&amp;quot;;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Verification&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
At this point you should be able to open a browser and go to your server and login to OBS.  Port 80 should be the webui, port 81 should be the api, and port 82 should be the repository directory.  The default username/password is Admin/opensuse.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt;Start By Default&amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The OBS should start automatically, so they should be added to chkconfig to do so:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       chkconfig --add obsrepserver obssrcserver obsscheduler obsdispatcher obspublisher obswarden obssigner&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Setting up Cross Compile&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt;Configure build types&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
To setup cross compile, add the appropriate machine types to /etc/sysconfig/obs-server.  For example, the following will enable ARM builds.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
       # vi /etc/sysconfig/obs-server&lt;br /&gt;
       OBS_SCHEDULER_ARCHITECTURES=&amp;quot;i586 armv5el armv7el“&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Cloning Repositories&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;prj and prjconf&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;The project settings and the project config is an important part of the project and should be copied to the local project setup.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      osc -A &amp;lt;remote API URL&amp;gt; meta prj &amp;lt;repository name&amp;gt; &amp;gt; prj.txt&lt;br /&gt;
      osc -A &amp;lt;remote API URL&amp;gt; meta prjconf &amp;lt;repository name&amp;gt; &amp;gt; prjconf.txt&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Modify the prj.txt file to name valid users in the userid fields.  Once modified, the settings and configuration can be applied to the local project.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      osc -A &amp;lt;local API URL&amp;gt; meta prj &amp;lt;repository name&amp;gt; -F prj.txt&lt;br /&gt;
      osc -A &amp;lt;local API URL&amp;gt; meta prjconf &amp;lt;repository name&amp;gt; -F prjconf.txt&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Mirror&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
obs_mirror_project (/usr/sbin/obs_mirror_project) is used to copy an external OBS project.  The script needed to be modified to use build.meego.com as apposed to the hard coded download.opensuse.org site. You need an login to build.meego.com to execute this script.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
/usr/sbin/obs_mirror_project &amp;lt;repository name&amp;gt; &amp;lt;type&amp;gt; &amp;lt;arch&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Rescan Repository&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Once the download of the project is complete, you have to rescan the local repository.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
/usr/lib/obs/server/bs_admin --rescan-repository &amp;lt;repository name&amp;gt; &amp;lt;type&amp;gt; &amp;lt;arch&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Troubleshooting&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Here are common issues that have been seen and how to resolve them.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;HTTP Error 500&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Check &amp;lt;b&amp;gt;/srv/www/obs/api/config/environments/production.rb&amp;lt;/b&amp;gt;&lt;br /&gt;
 and &amp;lt;b&amp;gt;/srv/www/obs/webui/config/environments/production.rb&amp;lt;/b&amp;gt; for configuration of the &lt;br /&gt;
&amp;lt;b&amp;gt;SOURCE_HOST&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;FRONTEND_HOST&amp;lt;/b&amp;gt;.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt;Cannot load person data for Admin in application_helper&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Make sure you set the permissions on the api and webui directories.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      chown -R lighttpd.lighttpd /srv/www/obs/{api,webui}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
If this doesn't work then try to recreate the databases:&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
      # mysql -u root -p&lt;br /&gt;
      mysql&amp;gt; drop database api_production;&lt;br /&gt;
      mysql&amp;gt; drop database webui_production;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
Rerun the mysql database setup from above and re-run rake.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;h2&amp;gt;External Links&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
[http://wiki.maemo.org/OpenSuse_Build_Service/Installation Maemo OBS Installation]&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
[http://wiki.maemo.org/OpenSuse_Build_Service/Fremantle_Setup Maemo Fremantel Setup]&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
[[User:Liam | Liam]]&lt;br /&gt;
&lt;br /&gt;
[[User:Dl9pf | Dl9pf]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Build Infrastructure]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2010-12-09T04:59:27Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* rpm error */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem :&lt;br /&gt;
&lt;br /&gt;
on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
  &lt;br /&gt;
on ubuntu10.04,you should install 'qemu-arm-static',use command:apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
===chroot: cannot run command `rpm'===&lt;br /&gt;
&lt;br /&gt;
when build a armv7l rpm,modify /usr/lib/build/build and /usr/lib/build/configs/meego-1.0.conf ,change armv7el to armv7l in these files,maybe /usr/lib/build/Build.pm also need change.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-08T10:43:11Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Installing for ubuntu10.04 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.'build' will create a build system to build rpm&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key ,though it could work normally )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package ,run 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
&lt;br /&gt;
==  Osc build using local obs ==&lt;br /&gt;
&lt;br /&gt;
I think it is so much like to build without OBS,so I add it.&lt;br /&gt;
&lt;br /&gt;
=== First step ===&lt;br /&gt;
&lt;br /&gt;
Install 'build' tools like up.&lt;br /&gt;
&lt;br /&gt;
=== second step ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sure you have a available local OBS,and use commands:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url meta pkg -e home:yourusername packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this means create a new package in obs.url is the address of your obs API.(notice the port).&lt;br /&gt;
As I seem,we should install 'vi',and remember to type something between &amp;lt;type&amp;gt;&amp;lt;&amp;gt;(in fact,maybe any change is ok)  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url co home:yourusername/packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will find a directory like home:yourusername  in your current directory include a directory in name of the packagename&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url build --no-verify MeeGo_1.1.80.6.20101116.1_Core_standard  i586&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Of course,runing this in this directory you downloaded,and put all files include source code package in this directory.'--no-verify' may be not needed,and 'MeeGo_1.1.80.6.20101116.1_Core_standard' stand the &amp;lt;repository&amp;gt; like  using  the obs with web ui, and i586 stand &amp;lt;target architecture&amp;gt;(maybe  select them in the obs web first).I think It is easy after using the obs with web ui.&lt;br /&gt;
&lt;br /&gt;
Because of 'build' tools,it maybe appear the problem like 'local build without obs'&lt;br /&gt;
&lt;br /&gt;
==Attention==&lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should add 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf,&lt;br /&gt;
'/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04, you should install qemu-arm-static,use 'apt-get install qemu-arm-static'.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-08T10:00:11Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Version */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.'build' will create a build system to build rpm&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key .though it could work normally,it maybe is the reason of the questions  I want to know at the end  of this page  )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package ,run 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
&lt;br /&gt;
==  Osc build using local obs ==&lt;br /&gt;
&lt;br /&gt;
I think it is so much like to build without OBS,so I add it.&lt;br /&gt;
&lt;br /&gt;
=== First step ===&lt;br /&gt;
&lt;br /&gt;
Install 'build' tools like up.&lt;br /&gt;
&lt;br /&gt;
=== second step ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sure you have a available local OBS,and use commands:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url meta pkg -e home:yourusername packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this means create a new package in obs.url is the address of your obs API.(notice the port).&lt;br /&gt;
As I seem,we should install 'vi',and remember to type something between &amp;lt;type&amp;gt;&amp;lt;&amp;gt;(in fact,maybe any change is ok)  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url co home:yourusername/packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will find a directory like home:yourusername  in your current directory include a directory in name of the packagename&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url build --no-verify MeeGo_1.1.80.6.20101116.1_Core_standard  i586&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Of course,runing this in this directory you downloaded,and put all files include source code package in this directory.'--no-verify' may be not needed,and 'MeeGo_1.1.80.6.20101116.1_Core_standard' stand the &amp;lt;repository&amp;gt; like  using  the obs with web ui, and i586 stand &amp;lt;target architecture&amp;gt;(maybe  select them in the obs web first).I think It is easy after using the obs with web ui.&lt;br /&gt;
&lt;br /&gt;
Because of 'build' tools,it maybe appear the problem like 'local build without obs'&lt;br /&gt;
&lt;br /&gt;
==Attention==&lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should add 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf,&lt;br /&gt;
'/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04, you should install qemu-arm-static,use 'apt-get install qemu-arm-static'.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-08T09:49:15Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* second step */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.'build' will create a build system to build rpm&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key .though it could work normally,it maybe is the reason of the questions  I want to know at the end  of this page  )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package ,run 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
&lt;br /&gt;
==  Osc build using local obs ==&lt;br /&gt;
&lt;br /&gt;
I think it is so much like to build without OBS,so I add it.&lt;br /&gt;
&lt;br /&gt;
=== First step ===&lt;br /&gt;
&lt;br /&gt;
Install 'build' tools like up.&lt;br /&gt;
&lt;br /&gt;
=== second step ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sure you have a available local OBS,and use commands:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url meta pkg -e home:yourusername packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this means create a new package in obs.url is the address of your obs API.(notice the port).&lt;br /&gt;
As I seem,we should install 'vi',and remember to type something between &amp;lt;type&amp;gt;&amp;lt;&amp;gt;(in fact,maybe any change is ok)  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url co home:yourusername/packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will find a directory like home:yourusername  in your current directory include a directory in name of the packagename&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url build --no-verify MeeGo_1.1.80.6.20101116.1_Core_standard  i586&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Of course,runing this in this directory you downloaded,and put all files include source code package in this directory.'--no-verify' may be not needed,and 'MeeGo_1.1.80.6.20101116.1_Core_standard' stand the &amp;lt;repository&amp;gt; like  using  the obs with web ui, and i586 stand &amp;lt;target architecture&amp;gt;(maybe  select them in the obs web first).I think It is easy after using the obs with web ui.&lt;br /&gt;
&lt;br /&gt;
Because of 'build' tools,it maybe appear the problem like 'local build without obs'&lt;br /&gt;
&lt;br /&gt;
==Attention==&lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should change  'lua' to 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf,&lt;br /&gt;
'/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04, you should install qemu-arm-static,use 'apt-get install qemu-arm-static'.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-08T09:41:09Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Installing for fedora13 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.'build' will create a build system to build rpm&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key .though it could work normally,it maybe is the reason of the questions  I want to know at the end  of this page  )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package ,run 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
&lt;br /&gt;
==  Osc build using local obs ==&lt;br /&gt;
&lt;br /&gt;
I think it is so much like to build without OBS,so I add it.&lt;br /&gt;
&lt;br /&gt;
=== First step ===&lt;br /&gt;
&lt;br /&gt;
Install 'build' tools like up.&lt;br /&gt;
&lt;br /&gt;
=== second step ===&lt;br /&gt;
&lt;br /&gt;
Sure you have a available local OBS,and use commands:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url meta pkg -e home:yourusername packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this means create a new package in obs.url is the address of your obs API.(notice the port).&lt;br /&gt;
As I seem,we should install 'vi',and remember to type something between &amp;lt;type&amp;gt;&amp;lt;&amp;gt;(in fact,maybe any change is ok)  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url co home:yourusername/packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will find a directory like home:yourusername  in your current directory include a directory in name of the packagename&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url build --no-verify MeeGo_1.1.80.6.20101116.1_Core_standard  i586&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Of course,runing this in this directory you downloaded,and put all files include source code package in this directory.'--no-verify' may be not needed,and 'MeeGo_1.1.80.6.20101116.1_Core_standard' stand the &amp;lt;repository&amp;gt; like  using  the obs with web ui, and i586 stand &amp;lt;target architecture&amp;gt;(maybe  select them in the obs web first).I think It is easy after using the obs with web ui.&lt;br /&gt;
&lt;br /&gt;
Because of 'build' tools,it maybe appear the problem like 'local build without obs'&lt;br /&gt;
&lt;br /&gt;
==Attention==&lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should change  'lua' to 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf,&lt;br /&gt;
'/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04, you should install qemu-arm-static,use 'apt-get install qemu-arm-static'.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-08T04:59:03Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Attention */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.'build' will create a build system to build rpm&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key .though it could work normally,it maybe is the reason of the questions  I want to know at the end  of this page  )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package build-2010.08.04-1.5.src.rpm  from http://repo.meego.com/MeeGo/tools/repos/fedora/13/src/ ,and run comand:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -ivh build-2010.08.04-1.5.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after that you can find them in /root/rpmbuild/  if you run as root.and you can use commands:'rpmbuild -ba &amp;lt;spec file&amp;gt;' to build a rpm,and install it by use 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
&lt;br /&gt;
==  Osc build using local obs ==&lt;br /&gt;
&lt;br /&gt;
I think it is so much like to build without OBS,so I add it.&lt;br /&gt;
&lt;br /&gt;
=== First step ===&lt;br /&gt;
&lt;br /&gt;
Install 'build' tools like up.&lt;br /&gt;
&lt;br /&gt;
=== second step ===&lt;br /&gt;
&lt;br /&gt;
Sure you have a available local OBS,and use commands:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url meta pkg -e home:yourusername packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this means create a new package in obs.url is the address of your obs API.(notice the port).&lt;br /&gt;
As I seem,we should install 'vi',and remember to type something between &amp;lt;type&amp;gt;&amp;lt;&amp;gt;(in fact,maybe any change is ok)  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url co home:yourusername/packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will find a directory like home:yourusername  in your current directory include a directory in name of the packagename&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url build --no-verify MeeGo_1.1.80.6.20101116.1_Core_standard  i586&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Of course,runing this in this directory you downloaded,and put all files include source code package in this directory.'--no-verify' may be not needed,and 'MeeGo_1.1.80.6.20101116.1_Core_standard' stand the &amp;lt;repository&amp;gt; like  using  the obs with web ui, and i586 stand &amp;lt;target architecture&amp;gt;(maybe  select them in the obs web first).I think It is easy after using the obs with web ui.&lt;br /&gt;
&lt;br /&gt;
Because of 'build' tools,it maybe appear the problem like 'local build without obs'&lt;br /&gt;
&lt;br /&gt;
==Attention==&lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should change  'lua' to 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf,&lt;br /&gt;
'/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04, you should install qemu-arm-static,use 'apt-get install qemu-arm-static'.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-08T02:26:35Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Building your package using build */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.'build' will create a build system to build rpm&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key .though it could work normally,it maybe is the reason of the questions  I want to know at the end  of this page  )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package build-2010.08.04-1.5.src.rpm  from http://repo.meego.com/MeeGo/tools/repos/fedora/13/src/ ,and run comand:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -ivh build-2010.08.04-1.5.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after that you can find them in /root/rpmbuild/  if you run as root.and you can use commands:'rpmbuild -ba &amp;lt;spec file&amp;gt;' to build a rpm,and install it by use 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
&lt;br /&gt;
==  Osc build using local obs ==&lt;br /&gt;
&lt;br /&gt;
I think it is so much like to build without OBS,so I add it.&lt;br /&gt;
&lt;br /&gt;
=== First step ===&lt;br /&gt;
&lt;br /&gt;
Install 'build' tools like up.&lt;br /&gt;
&lt;br /&gt;
=== second step ===&lt;br /&gt;
&lt;br /&gt;
Sure you have a available local OBS,and use commands:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url meta pkg -e home:yourusername packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this means create a new package in obs.url is the address of your obs API.(notice the port).&lt;br /&gt;
As I seem,we should install 'vi',and remember to type something between &amp;lt;type&amp;gt;&amp;lt;&amp;gt;(in fact,maybe any change is ok)  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url co home:yourusername/packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will find a directory like home:yourusername  in your current directory include a directory in name of the packagename&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url build --no-verify MeeGo_1.1.80.6.20101116.1_Core_standard  i586&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Of course,runing this in this directory you downloaded,and put all files include source code package in this directory.'--no-verify' may be not needed,and 'MeeGo_1.1.80.6.20101116.1_Core_standard' stand the &amp;lt;repository&amp;gt; like  using  the obs with web ui, and i586 stand &amp;lt;target architecture&amp;gt;(maybe  select them in the obs web first).I think It is easy after using the obs with web ui.&lt;br /&gt;
&lt;br /&gt;
Because of 'build' tools,it maybe appear the problem like 'local build without obs'&lt;br /&gt;
&lt;br /&gt;
===Attention=== &lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should change  'lua' to 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf,&lt;br /&gt;
'/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04, you should install qemu-arm-static,use 'apt-get install qemu-arm-static'.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2010-12-08T01:15:33Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Exec format error */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem :&lt;br /&gt;
&lt;br /&gt;
on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
  &lt;br /&gt;
on ubuntu10.04,you should install 'qemu-arm-static',use command:apt-get install qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-08T01:13:27Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Arch */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key .though it could work normally,it maybe is the reason of the questions  I want to know at the end  of this page  )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package build-2010.08.04-1.5.src.rpm  from http://repo.meego.com/MeeGo/tools/repos/fedora/13/src/ ,and run comand:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -ivh build-2010.08.04-1.5.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after that you can find them in /root/rpmbuild/  if you run as root.and you can use commands:'rpmbuild -ba &amp;lt;spec file&amp;gt;' to build a rpm,and install it by use 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
 &lt;br /&gt;
==  Osc build using local obs ==&lt;br /&gt;
&lt;br /&gt;
I think it is so much like to build without OBS,so I add it.&lt;br /&gt;
&lt;br /&gt;
=== First step ===&lt;br /&gt;
&lt;br /&gt;
Install 'build' tools like up.&lt;br /&gt;
&lt;br /&gt;
=== second step ===&lt;br /&gt;
&lt;br /&gt;
Sure you have a available local OBS,and use commands:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url meta pkg -e home:yourusername packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this means create a new package in obs.url is the address of your obs API.(notice the port).&lt;br /&gt;
As I seem,we should install 'vi',and remember to type something between &amp;lt;type&amp;gt;&amp;lt;&amp;gt;(in fact,maybe any change is ok)  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url co home:yourusername/packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will find a directory like home:yourusername  in your current directory include a directory in name of the packagename&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url build --no-verify MeeGo_1.1.80.6.20101116.1_Core_standard  i586&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Of course,runing this in this directory you downloaded,and put all files include source code package in this directory.'--no-verify' may be not needed,and 'MeeGo_1.1.80.6.20101116.1_Core_standard' stand the &amp;lt;repository&amp;gt; like  using  the obs with web ui, and i586 stand &amp;lt;target architecture&amp;gt;(maybe  select them in the obs web first).I think It is easy after using the obs with web ui.&lt;br /&gt;
&lt;br /&gt;
Because of 'build' tools,it maybe appear the problem like 'local build without obs'&lt;br /&gt;
&lt;br /&gt;
===Attention=== &lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should change  'lua' to 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf,&lt;br /&gt;
'/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04, you should install qemu-arm-static,use 'apt-get install qemu-arm-static'.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-08T01:04:08Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* second step */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key .though it could work normally,it maybe is the reason of the questions  I want to know at the end  of this page  )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package build-2010.08.04-1.5.src.rpm  from http://repo.meego.com/MeeGo/tools/repos/fedora/13/src/ ,and run comand:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -ivh build-2010.08.04-1.5.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after that you can find them in /root/rpmbuild/  if you run as root.and you can use commands:'rpmbuild -ba &amp;lt;spec file&amp;gt;' to build a rpm,and install it by use 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
 &lt;br /&gt;
==  Osc build using local obs ==&lt;br /&gt;
&lt;br /&gt;
I think it is so much like to build without OBS,so I add it.&lt;br /&gt;
&lt;br /&gt;
=== First step ===&lt;br /&gt;
&lt;br /&gt;
Install 'build' tools like up.&lt;br /&gt;
&lt;br /&gt;
=== second step ===&lt;br /&gt;
&lt;br /&gt;
Sure you have a available local OBS,and use commands:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url meta pkg -e home:yourusername packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this means create a new package in obs.url is the address of your obs API.(notice the port).&lt;br /&gt;
As I seem,we should install 'vi',and remember to type something between &amp;lt;type&amp;gt;&amp;lt;&amp;gt;(in fact,maybe any change is ok)  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url co home:yourusername/packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will find a directory like home:yourusername  in your current directory include a directory in name of the packagename&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url build --no-verify MeeGo_1.1.80.6.20101116.1_Core_standard  i586&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Of course,runing this in this directory you downloaded,and put all files include source code package in this directory.'--no-verify' may be not needed,and 'MeeGo_1.1.80.6.20101116.1_Core_standard' stand the &amp;lt;repository&amp;gt; like  using  the obs with web ui, and i586 stand &amp;lt;target architecture&amp;gt;(maybe  select them in the obs web first).I think It is easy after using the obs with web ui.&lt;br /&gt;
&lt;br /&gt;
Because of 'build' tools,it maybe appear the problem like 'local build without obs'&lt;br /&gt;
&lt;br /&gt;
===Attention=== &lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should change  'lua' to 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf,&lt;br /&gt;
'/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04,I find 'qemu-arm' in /usr/local/bin,and run 'file /usr/local/bin' ,and it show 'dynamically linked',but it worked normal,and I was puzzled to this.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-08T01:03:41Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* second step */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key .though it could work normally,it maybe is the reason of the questions  I want to know at the end  of this page  )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package build-2010.08.04-1.5.src.rpm  from http://repo.meego.com/MeeGo/tools/repos/fedora/13/src/ ,and run comand:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -ivh build-2010.08.04-1.5.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after that you can find them in /root/rpmbuild/  if you run as root.and you can use commands:'rpmbuild -ba &amp;lt;spec file&amp;gt;' to build a rpm,and install it by use 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
 &lt;br /&gt;
==  Osc build using local obs ==&lt;br /&gt;
&lt;br /&gt;
I think it is so much like to build without OBS,so I add it.&lt;br /&gt;
&lt;br /&gt;
=== First step ===&lt;br /&gt;
&lt;br /&gt;
Install 'build' tools like up.&lt;br /&gt;
&lt;br /&gt;
=== second step ===&lt;br /&gt;
&lt;br /&gt;
Sure you have a available local OBS,and use commands:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url meta pkg -e home:yourusername packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this means create a new package in obs.url is the address of your obs API.(notice the port).&lt;br /&gt;
As I seem,we should install 'vi',and remember to type something between &amp;lt;type&amp;gt;&amp;lt;&amp;gt;(in fact,maybe any change is ok)  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url co home:yourusername/packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will find a directory like home:yourusername  in your current directory include a directory in name of the packagename&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url build --no-verify MeeGo_1.1.80.6.20101116.1_Core_standard  i586&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Of course,runing this in this directory you downloaded,and put all files include source code package in this directory.'--no-verify' may be not needed,and 'MeeGo_1.1.80.6.20101116.1_Core_standard' stand the &amp;lt;repository&amp;gt; like  using  the obs with web ui, and i586 stand &amp;lt;target architecture&amp;gt;(you should select them in the obs web).I think It is easy after using the obs with web ui.&lt;br /&gt;
&lt;br /&gt;
Because of 'build' tools,it maybe appear the problem like 'local build without obs'&lt;br /&gt;
&lt;br /&gt;
===Attention=== &lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should change  'lua' to 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf,&lt;br /&gt;
'/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04,I find 'qemu-arm' in /usr/local/bin,and run 'file /usr/local/bin' ,and it show 'dynamically linked',but it worked normal,and I was puzzled to this.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-08T00:17:18Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* second step */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key .though it could work normally,it maybe is the reason of the questions  I want to know at the end  of this page  )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package build-2010.08.04-1.5.src.rpm  from http://repo.meego.com/MeeGo/tools/repos/fedora/13/src/ ,and run comand:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -ivh build-2010.08.04-1.5.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after that you can find them in /root/rpmbuild/  if you run as root.and you can use commands:'rpmbuild -ba &amp;lt;spec file&amp;gt;' to build a rpm,and install it by use 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
 &lt;br /&gt;
==  Osc build using local obs ==&lt;br /&gt;
&lt;br /&gt;
I think it is so much like to build without OBS,so I add it.&lt;br /&gt;
&lt;br /&gt;
=== First step ===&lt;br /&gt;
&lt;br /&gt;
Install 'build' tools like up.&lt;br /&gt;
&lt;br /&gt;
=== second step ===&lt;br /&gt;
&lt;br /&gt;
Sure you have a available local OBS,and use commands:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url meta pkg -e home:yourusername packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this means create a new package in obs.url is the address of your obs API.(notice the port).&lt;br /&gt;
As I seem,we should install 'vi',and remember to type something between &amp;lt;type&amp;gt;&amp;lt;&amp;gt;(in fact,maybe any change is ok)  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url co home:yourusername/packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will find a directory like home:yourusername  in your current directory include a directory in name of the packagename&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url build --no-verify MeeGo_1.1.80.6.20101116.1_Core_standard  i586&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Of course,runing this in this directory you downloaded,and put all files include source code package in this directory.'--no-verify' may be not needed,and 'MeeGo_1.1.80.6.20101116.1_Core_standard' stand the &amp;lt;repository&amp;gt; like  using  the obs with web ui, and i586 stand &amp;lt;target architecture&amp;gt;.I think It is easy after using the obs with web ui.&lt;br /&gt;
&lt;br /&gt;
Because of 'build' tools,it maybe appear the problem like 'local build without obs'&lt;br /&gt;
&lt;br /&gt;
===Attention=== &lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should change  'lua' to 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf,&lt;br /&gt;
'/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04,I find 'qemu-arm' in /usr/local/bin,and run 'file /usr/local/bin' ,and it show 'dynamically linked',but it worked normal,and I was puzzled to this.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-07T10:28:52Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Attention */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key .though it could work normally,it maybe is the reason of the questions  I want to know at the end  of this page  )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package build-2010.08.04-1.5.src.rpm  from http://repo.meego.com/MeeGo/tools/repos/fedora/13/src/ ,and run comand:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -ivh build-2010.08.04-1.5.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after that you can find them in /root/rpmbuild/  if you run as root.and you can use commands:'rpmbuild -ba &amp;lt;spec file&amp;gt;' to build a rpm,and install it by use 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
 &lt;br /&gt;
==  Osc build using local obs ==&lt;br /&gt;
&lt;br /&gt;
I think it is so much like to build without OBS,so I add it.&lt;br /&gt;
&lt;br /&gt;
=== First step ===&lt;br /&gt;
&lt;br /&gt;
Install 'build' tools like up.&lt;br /&gt;
&lt;br /&gt;
=== second step ===&lt;br /&gt;
&lt;br /&gt;
Sure you have a available local OBS,and use commands:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url meta pkg -e home:yourusername packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this means create a new package in obs.url is the address of your obs API.(notice the port).&lt;br /&gt;
As I seem,we should install 'vi',and remember to type something between &amp;lt;type&amp;gt;&amp;lt;&amp;gt;(in fact,may be every change will be ok)  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url co home:yourusername/packagename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will find a directory like home:yourusername  in your current directory&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
osc -A url build --no-verify MeeGo_1.1.80.6.20101116.1_Core_standard  i586&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Of course,'--no-verify' may be not needed,and 'MeeGo_1.1.80.6.20101116.1_Core_standard' stand the &amp;lt;repository&amp;gt; like  using  the obs with web ui, and i586 stand &amp;lt;target architecture&amp;gt;.I think It is easy after using the obs with web ui.&lt;br /&gt;
&lt;br /&gt;
Because of 'build' tools,it maybe appear the problem like 'local build without obs'&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Attention=== &lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should change  'lua' to 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf,&lt;br /&gt;
'/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04,I find 'qemu-arm' in /usr/local/bin,and run 'file /usr/local/bin' ,and it show 'dynamically linked',but it worked normal,and I was puzzled to this.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Developing_in_a_MeeGo_Environment</id>
		<title>Developing in a MeeGo Environment</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Developing_in_a_MeeGo_Environment"/>
				<updated>2010-12-03T06:42:46Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Exec format error */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
This guide is a way to build packages for the MeeGo 'day one' release, before more proper developer tools are introduced.&lt;br /&gt;
&lt;br /&gt;
== Setting up your development environment ==&lt;br /&gt;
&lt;br /&gt;
To begin developing for the MeeGo 'day one' release, you will need to follow these steps:&lt;br /&gt;
&lt;br /&gt;
* NOTE: These instructions were tested on a Fedora 12 chroot (X86), your experience may vary with other distributions.&lt;br /&gt;
* Have access to 'root' on your development machine.&lt;br /&gt;
* [http://wiki.meego.com/Image_Creation#Requirements Satisfy the requirements for MIC2 installation]&lt;br /&gt;
* [http://wiki.meego.com/Image_Creation#Installation Download MIC2 from the git repository] (development tree)&lt;br /&gt;
* [http://wiki.meego.com/Image_Creation#Installation Install MIC2]&lt;br /&gt;
* For ARM, Install QEMU: Grab the qemu package for your system. Fedora one is at [http://build.moblin.org/build/devel:tools:building/Fedora_11/i586/qemu/qemu-arm-static-0.12.3-10.1.i386.rpm this url]&lt;br /&gt;
* After this, run 'qemu-binfmt-conf.sh' as root. This will enable your system to run ARM binaries and will have to be repeated at system startup.&lt;br /&gt;
* If you have Scratchbox and/or Maemo SDK installed, please follow [http://wiki.maemo.org/Mer/Build/Application_Building#Co-existing_with_Scratchbox these instructions to avoid conflicts]&lt;br /&gt;
* Download MeeGo development images for [http://repo.meego.com/MeeGo/devel/n900/images/meego-codedrop-ia32-developer-201003311106.img.bz2 MeeGo X86] and [http://repo.meego.com/MeeGo/devel/n900/images/meego-codedrop-arm-developer-201003311152.img.bz2 MeeGo ARM] and bzip2 -d them (they are 3GB loopback images)&lt;br /&gt;
* Or you can create your own development images with [[Media:Devel-ia32.ks|this kickstart file for X86]] or [[Media:Devel-arm.ks|this kickstart file for ARM]] and the instructions at [[Image_Creation_For_Beginners]]&lt;br /&gt;
&lt;br /&gt;
== Introducing the tools ==&lt;br /&gt;
&lt;br /&gt;
=== mic-chroot ===&lt;br /&gt;
&lt;br /&gt;
mic-chroot is a tool that allows you to 'chroot' into an existing MeeGo image in order to develop within it, without contaminating your developer machine's environment.  Chroot simply means to 'change the root' to a new location (so instead of your root being / on your dev machine, it will be the new root directory within the image). &lt;br /&gt;
&lt;br /&gt;
This restricts access to your real root and your real file system, and instead, uses the image filesystem as its root and filesystem. No contamination, and no effect on your development machine.&lt;br /&gt;
&lt;br /&gt;
With mic-chroot, you will effectively be able to modify and manipulate the image's filesystem as if you were running a shell within an installed image, without having to install the image.  When finished, you can also create a new MeeGo image based on your changes.&lt;br /&gt;
&lt;br /&gt;
=== Developer images ===&lt;br /&gt;
&lt;br /&gt;
The developer images contain the exact same packages as is installed when you try to build a package in the MeeGo OBS without any dependencies, along with some helper packages (vim, nano) to make chroot usage easier. The list of these packages can be seen in the kickstart file mentioned above.&lt;br /&gt;
&lt;br /&gt;
This is because, in the end, it will save you time when you want to upload your application into a builder system because it will make sure that you specify your package build dependencies correctly.&lt;br /&gt;
&lt;br /&gt;
You can in the development image chroot run 'yum install &amp;lt;package names&amp;gt;' and that way install your package build dependencies to the chroot to compile your package.&lt;br /&gt;
&lt;br /&gt;
== Building your package: Step by step ==&lt;br /&gt;
&lt;br /&gt;
Prerequisites:&lt;br /&gt;
&lt;br /&gt;
* It is assumed you have already made either a source rpm (.src.rpm) or a package (.spec and attached files) before these steps. For a guide how to create packaging for MeeGo, see [[Packaging]].&lt;br /&gt;
* You have already chosen an architecture to build your package towards in these steps. That is the development image &amp;lt;image-name&amp;gt;, either meego-codedrop-ia32*.img (X86) or meego-codedrop-arm*.img (ARM)&lt;br /&gt;
&lt;br /&gt;
=== Step 1: Chrooting into the development image ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-chroot &amp;lt;image-name&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
With this command, you are now transported into the root filesystem of the image. It is possible to exchange files with your normal file system through the /parentroot directory. You can also conduct yum install, yum remove and any other network related operations.&lt;br /&gt;
&lt;br /&gt;
=== Step 2: Setting up the build directories ===&lt;br /&gt;
&lt;br /&gt;
You only need to do this once, but you may want to clean up the directory and remake it once in a while. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/rpmbuild&lt;br /&gt;
cd ~/rpmbuild&lt;br /&gt;
mkdir -p SOURCES SPECS BUILD RPMS SRPMS&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 3: Staging source package for build ===&lt;br /&gt;
&lt;br /&gt;
You must change directory to the location of your sources.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd /parentroot/path/to/your/sources&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you have a source rpm (.src.rpm), you will need to extract it:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm2cpio &amp;lt;MyPkg&amp;gt;.src.rpm | cpio -idmv --no-absolute-filenames &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will result in a .spec file and maybe some attached files (patches, source tarball, etc). The .spec file is in this guide called package.spec.&lt;br /&gt;
&lt;br /&gt;
When you have a .spec file you need to place it in ~/rpmbuild/SPECS and the remaining files in ~/rpmbuild/SOURCES.&lt;br /&gt;
&lt;br /&gt;
=== Step 4: Installing your build dependencies ===&lt;br /&gt;
&lt;br /&gt;
You can see your build dependencies in the package.spec file, which is the lines starting with BuildRequires. Those packages can then be installed using 'yum install':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install &amp;lt;package names&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 5: Building your package ===&lt;br /&gt;
&lt;br /&gt;
To build your package, you must then run the following command, where package.spec is the name of your spec file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpmbuild -ba ~/rpmbuild/SPECS/package.spec &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 6: Enjoying your built package ===&lt;br /&gt;
&lt;br /&gt;
Provided the build completed without errors, you can now see the resulting rpms in ~/rpmbuild/RPMS/. You can transfer these back to your filesystem through the /parentroot directory and you can then transfer these to your MeeGo device, virtual machine, etc and install them there.&lt;br /&gt;
&lt;br /&gt;
== Including your packages in a MeeGo image ==&lt;br /&gt;
Before reading these sections, we suggest to first read [[Image Creation For Beginners]] and [[Image Creation]]&lt;br /&gt;
&lt;br /&gt;
This will give you the basics of what you need to generate a basic MeeGo image.&lt;br /&gt;
&lt;br /&gt;
Specifically, there are important details about how to modify a .ks file here: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
KickStart .ks files are the main configuration file that the Image Creator uses to create images, and the brunt of what is talked about in this section has to do with modifying your .ks file.&lt;br /&gt;
&lt;br /&gt;
=== Recreating a standard MeeGo Image ===&lt;br /&gt;
To create a standard MeeGo image, please follow the instructions in [[Image Creation For Beginners]].&lt;br /&gt;
&lt;br /&gt;
=== Adding more MeeGo packages to a MeeGo Image ===&lt;br /&gt;
Here is a scenario where you want to add additional MeeGo packages to the standard MeeGo image.&lt;br /&gt;
&lt;br /&gt;
First, obtain a standard MeeGo .ks file [http://repo.meego.com/MeeGo/ from here]&lt;br /&gt;
&lt;br /&gt;
Check the [http://repo.meego.com/MeeGo/ MeeGo repos] and make sure that the packages you're looking doesn't already exist in MeeGo&lt;br /&gt;
&lt;br /&gt;
Now within the .ks file, add the MeeGo package names that you want included in this new image.  For more on how add packages in a .ks file, please read this important section here: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
Run this modified .ks file through the Image Creator MIC.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator -c my-new-ks.ks -f livecd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For more options and details on image creation and MIC, go here: [[Image_Creation]]&lt;br /&gt;
&lt;br /&gt;
Your new image will now be a standard MeeGo image including the new packages you've added.&lt;br /&gt;
&lt;br /&gt;
Again, this wiki is of great value to you when manipulating and navigating through .ks files: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
It is the key to mastering the art of creating custom-made MeeGo images.&lt;br /&gt;
&lt;br /&gt;
=== Adding your own code &amp;amp; and non-MeeGo packages to a MeeGo Image ===&lt;br /&gt;
&lt;br /&gt;
If you have your own packages on your developer machine that you want to test out by creating a new MeeGo image with them.&lt;br /&gt;
&lt;br /&gt;
First obtain a standard MeeGo .ks file. This is possible through the repository.&lt;br /&gt;
&lt;br /&gt;
To add a new repo to your .ks file, go here for easy and detailed steps: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
Once you add the new repo(s) that the Image Creator will pull from, you now have to list the packages you want to pull down from these repos.  For instructions on adding packages to your .ks file, go here: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
If you have local rpms on your local machine that you would like to include, you need to first create a local repo on your machine.  Move your rpms into a directory.  Then create a local repo with that directory like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mv *.rpms /home/user/my-local-repo&lt;br /&gt;
&lt;br /&gt;
$ createrepo -d /home/user/my-local-repo&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This turns /home/user/my-local-repo into a local repository that you can point your .ks file to.  For steps on how to add a new repo, go here: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
And again, make sure you have listed in your .ks all the packages you would like to include in your new MeeGo Image.&lt;br /&gt;
&lt;br /&gt;
Now, simply run this new .ks file through MIC, the Image Creator.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator -c my-new-ks.ks -f livecd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For more options and details on image creation and MIC, go here: [[Image_Creation]]&lt;br /&gt;
&lt;br /&gt;
Your new image will now be a standard MeeGo image including the new packages and repos you've added. &lt;br /&gt;
&lt;br /&gt;
Again, this wiki is of great value to you when manipulating and navigating through .ks files: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
It is the key to mastering the art of creating custom-made MeeGo images.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Error: chroot: cannot run command X: No such file or directory ===&lt;br /&gt;
&lt;br /&gt;
Most likely cause: You have Scratchbox1 installed and you need to follow instructions given in Prerequisites for ARM.&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
&lt;br /&gt;
Most likely cause: You have not run qemu-binfmt-misc.sh as root.&lt;br /&gt;
&lt;br /&gt;
Maybe qemu-arm is not right set,try :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(the package maybe changes,so you can go the web address to get it ,then install it )&lt;br /&gt;
see here:[[Local_Build_Without_OBS_Needed]]&lt;br /&gt;
&lt;br /&gt;
=== mmap: permission denied ===&lt;br /&gt;
&lt;br /&gt;
Most likely cause: VDSO&lt;br /&gt;
&lt;br /&gt;
Do this as root:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
echo 0 &amp;gt; /proc/sys/vm/vdso_enabled&lt;br /&gt;
echo 4096 &amp;gt; /proc/sys/vm/mmap_min_addr&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2010-12-03T06:29:32Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Exec format error */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' (the package maybe changes,so you can go the web address to get it ,then install it  )to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
&lt;br /&gt;
=== rpm error ===&lt;br /&gt;
This problem on ubuntu 10.04 when using 'build' to create a i686 rpm package.&lt;br /&gt;
''Error:rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory''&lt;br /&gt;
Please modify the '''/usr/lib/build/configs/default.conf''' in preinstall section add liblua.--[[User:Kismeter|Kismeter]] 15:02, 2 December 2010 (UTC)&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/SDK/Docs/1.1/Getting_started_with_the_MeeGo_SDK_for_Linux</id>
		<title>SDK/Docs/1.1/Getting started with the MeeGo SDK for Linux</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/SDK/Docs/1.1/Getting_started_with_the_MeeGo_SDK_for_Linux"/>
				<updated>2010-12-03T02:33:17Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* On Ubuntu */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:devguide]]&lt;br /&gt;
[[Category:meego-1.1]]&lt;br /&gt;
[[Category:tutorial]]&lt;br /&gt;
[[Category:application-developer]]&lt;br /&gt;
[[Category:linux]]&lt;br /&gt;
This page describes how to install and configure the MeeGo 1.1 SDK on your Linux development system.&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* '''Hardware:''' Any reasonably modern hardware, such as 32-bit Intel Atom or Intel Core 2 CPU.  '''To use QEMU''' to run MeeGo in a virtual machine your system must have support for ''Virtualization Technology'' (VT).  See the [[SDK/Docs/1.1/MeeGo_SDK_Graphics_Acceleration|Graphics Acceleration]] page for details.&lt;br /&gt;
* '''Software:'''  The MeeGo 1.1 SDK has been validated on 32-bit versions of [https://fedoraproject.org/en/index Fedora 12], [[https://fedoraproject.org/en/index Fedora 13], [http://www.ubuntu.com/ Ubuntu 9.10], and [http://www.ubuntu.com/ Ubuntu 10.04 LTS].  For support status and issues using other host OS's see [http://wiki.meego.com/SDK/Docs/1.1/MeeGo_1.1_SDK_Host_OS_Support this page]. &lt;br /&gt;
* '''Root privileges:''' To install the SDK you will need to have root privileges.  Commands that require root privileges are prefaced with &amp;quot;sudo&amp;quot;. For convenience, you may wish to setup &amp;quot;sudo&amp;quot; capabilities to easily switch between root and normal user privileges (see [http://www.gratisoft.us/sudo/sudo.man.html sudoers manpage].)&lt;br /&gt;
* '''Commands:''' Terminal commands are prefaced with &amp;quot;$&amp;quot;.  Do not enter $ when entering the commands in your terminal.&lt;br /&gt;
&lt;br /&gt;
== Configuring distributions package manager ==&lt;br /&gt;
&lt;br /&gt;
=== On Ubuntu or Debian ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Replaced '#' with &amp;lt;li&amp;gt; so that multi-line &amp;lt;pre&amp;gt; statements would appear in a single block --&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Add the following line to &amp;lt;code&amp;gt;/etc/apt/sources.list.d/meego-sdk.list&amp;lt;/code&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
 Replace ${distribution}/${version} with one of the following: &amp;quot;ubuntu/09.10&amp;quot;, &amp;quot;ubuntu/10.04&amp;quot;, or &amp;quot;debian/5.0&amp;quot;.&lt;br /&gt;
 &amp;lt;pre&amp;gt;deb http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/ / &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Add the repository public key:&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ gpg --keyserver pgpkeys.mit.edu --recv 0BC7BEC479FC1F8A&lt;br /&gt;
$ gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add -&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Update the packages database:&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo apt-get update&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;To check that the MeeGo repository has been correctly added, run the following command. The details of the MADDE package should be printed.&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ apt-cache policy madde&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== On Fedora ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Go to the yum repository directory:&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ cd /etc/yum.repos.d/ &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Add the MeeGo SDK yum repository. &amp;lt;br/&amp;gt;&lt;br /&gt;
Replace ${distribution}/${version} with one of the following: &amp;quot;fedora/12&amp;quot; or &amp;quot;fedora/13&amp;quot;.&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo wget http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Install the signing key:&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo rpm --import http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/repodata/repomd.xml.key &amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Update the packages database:&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo yum update&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== On MeeGo ===&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;To add the MeeGo SDK repository on a system running MeeGo, run the following command. &amp;lt;br&amp;gt;&lt;br /&gt;
Replace ${distribution}/${version} with one of the following values: &amp;quot;meego/1.1&amp;quot; or &amp;quot;meego/trunk&amp;quot;.&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo zypper addrepo -f http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
=== On openSUSE ===&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;To add the MeeGo repository, run the following command. &amp;lt;br&amp;gt;&lt;br /&gt;
Replace ${distribution}/${version} with one of the following values: &amp;quot;opensuse/11.2&amp;quot; or &amp;quot;opensuse/11.3&amp;quot;.&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo zypper addrepo -f http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installing the MeeGo SDK ==&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Debian / Ubuntu&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo apt-get install meego-sdk&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Fedora&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo yum install meego-sdk&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;OpenSUSE / MeeGo&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo zypper install meego-sdk&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''For ARM only:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Debian / Ubuntu&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo apt-get install meego-sdk-armv7l&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Fedora&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo yum install meego-sdk-armv7l&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;OpenSUSE / MeeGo&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo zypper install meego-sdk-armv7l&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''For IA32 only:'''http://wiki.meego.com/SDK/Docs/1.1/Configuring_QEMU_runtimes&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Debian / Ubuntu&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo apt-get install meego-sdk-ia32&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Fedora&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo yum install meego-sdk-ia32&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;OpenSUSE / MeeGo&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo zypper install meego-sdk-ia32&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Install MeeGo Target ==&lt;br /&gt;
A ''Target'' is used to build programs using the MeeGo toolchain and libraries (sysroot).  It is downloaded as a large (~250MB) .bz2 file using the commands below.  MADDE (MeeGo Application Develop and Debug Environment ([http://wiki.maemo.org/MADDE background])) is a tool that assists in the download and installation of the Target.  &amp;quot;mad-admin&amp;quot; is the MADDE command-line tool.  You can install multiple Targets and switch easily between them in Qt Creator (described later).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Create a MeeGo target using MADDE &amp;lt;br&amp;gt;&lt;br /&gt;
Run the command below.  Replace &amp;lt;target&amp;gt; with one of&lt;br /&gt;
* '''meego-core-armv7l-1.1''':  Build applications for ARM handheld devices (such as N900)&lt;br /&gt;
* '''meego-handset-ia32-1.1''':  Build applications for x86 handheld devices (such as Aava)&lt;br /&gt;
* '''meego-netbook-ia32-1.1''': Build applications for x86 netbooks.&lt;br /&gt;
Note that the &amp;lt;code&amp;gt;-f&amp;lt;/code&amp;gt; flag instructs MADDE to download the Target tarball (bz2) first.&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ sudo mad-admin create -f &amp;lt;target&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
If you counter problems, check the [http://wiki.meego.com/MeeGo_SDK_Troubleshooting#General_SDK_Errors Troubleshooting page]&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;To check that the target has been installed correctly, run the following. &amp;lt;br&amp;gt;&lt;br /&gt;
Replace &amp;lt;target&amp;gt; with one of the values described in the previous step&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ mad -t &amp;lt;target&amp;gt; pscreate -t qt-simple qthello&lt;br /&gt;
$ cd qthello&lt;br /&gt;
$ mad -t &amp;lt;target&amp;gt; qmake&lt;br /&gt;
$ mad -t &amp;lt;target&amp;gt; make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;To check that the qt-simple application is created for the correct target, run:&lt;br /&gt;
 &amp;lt;pre&amp;gt;$ file build/qthello&amp;lt;/pre&amp;gt;&lt;br /&gt;
 &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Install MeeGo Runtime ==&lt;br /&gt;
A ''Runtime'' is the MeeGo OS image that is run with QEMU when debugging applications on your host system.  It is not required if you develop against real hardware running MeeGo.  It is downloaded as a large (~650MB) .bz2 file using MADDE.  The Runtime is not needed until you have finished configuring Qt Creator.  However, as this step may take some time, it is recommended to start it now so that it can proceed in the background while you continue following the steps on this page.&lt;br /&gt;
&lt;br /&gt;
See [http://wiki.meego.com/SDK/Docs/1.1/Configuring_QEMU_runtimes Downloading a Runtime and Using QEMU]&lt;br /&gt;
&lt;br /&gt;
== Configuring Qt Creator to use the MeeGo toolchain(s) ==&lt;br /&gt;
&lt;br /&gt;
Start Qt Creator by selecting '''Applications''' &amp;gt; '''Programming''' &amp;gt; '''Qt Creator'''.&lt;br /&gt;
&lt;br /&gt;
Configure Qt Creator to use the MeeGo toolchain(s):&lt;br /&gt;
# Go to '''Tools''' &amp;gt; '''Options''' &amp;gt; '''Qt4''' &amp;gt; '''Qt Versions'''.&lt;br /&gt;
# On the right side of the '''Qt Versions''' view, click on the plus sign button to add a new version.&lt;br /&gt;
#: A blank, new version appears in the '''Qt Versions''' view.&lt;br /&gt;
# On the '''Version Name''' line, specify a name for the new version.&lt;br /&gt;
# On the '''qmake location''' line, specify a qmake location for the new version. The toolchain installs by default to &amp;lt;code&amp;gt;usr/lib/madde/linux-i686/targets/&amp;lt;target&amp;gt;/bin/qmake&amp;lt;/code&amp;gt;.&lt;br /&gt;
# Click '''Rebuild''', '''Apply''' and '''OK'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Qt Creator adding MeeGo toolchains.png|frame|none|Adding the MeeGo toolchain(s) in Qt Creator]]&lt;br /&gt;
&lt;br /&gt;
=== Using the MeeGo SDK Qt version ===&lt;br /&gt;
&lt;br /&gt;
It is also possible to use Qt Creator without a MeeGo toolchain. This option can be useful if you don't need to cross-compile your software: for example, if you are doing QML development with no use of C++.&lt;br /&gt;
&lt;br /&gt;
The steps are the same as above, but the '''qmake location''' is set to the &amp;lt;code&amp;gt;qmake&amp;lt;/code&amp;gt; installed with the meego-sdk-qt libraries. The usual location for this on Linux is:&lt;br /&gt;
&lt;br /&gt;
 /opt/meego/meego-sdk-qt/bin/qmake&lt;br /&gt;
&lt;br /&gt;
== Developing with the SDK ==&lt;br /&gt;
&lt;br /&gt;
To start developing with the MeeGo SDK, the [[SDK/Docs/1.1/Creating_Hello_World|hello world tutorial]] is a good starting point.&lt;br /&gt;
&lt;br /&gt;
This tutorial covers how to start a project, package it, and deploy it to a device (either a real device, or a QEMU runtime set up through MADDE).&lt;br /&gt;
&lt;br /&gt;
== Removing components ==&lt;br /&gt;
&lt;br /&gt;
=== On Ubuntu ===&lt;br /&gt;
&lt;br /&gt;
To remove installed components, run:&lt;br /&gt;
 $ sudo apt-get remove --purge meego-sdk-qtcreator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu meego-sdk-qt&lt;br /&gt;
&lt;br /&gt;
To remove dependencies related to installed components, run:&lt;br /&gt;
 $ sudo apt-get autoremove&lt;br /&gt;
&lt;br /&gt;
To remove MADDE directory (it is not automatically removed when &amp;quot;madde&amp;quot; package is uninstalled):&lt;br /&gt;
 $ sudo rm -rf /usr/lib/madde&lt;br /&gt;
&lt;br /&gt;
To remove the packages from your local repository (&amp;lt;code&amp;gt;/var/cache/apt/archives/&amp;lt;/code&amp;gt;), run:&lt;br /&gt;
 $ sudo apt-get clean&lt;br /&gt;
&lt;br /&gt;
=== On Fedora ===&lt;br /&gt;
&lt;br /&gt;
To remove installed components, run:&lt;br /&gt;
 $ sudo yum remove meego-sdk-qt-creator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu&lt;br /&gt;
&lt;br /&gt;
To remove MADDE directory:&lt;br /&gt;
 $ sudo rm -rf /usr/lib/madde&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== On openSUSE ===&lt;br /&gt;
&lt;br /&gt;
To remove installed components, run:&lt;br /&gt;
 $ sudo zypper remove -u meego-sdk-qt-creator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu&lt;br /&gt;
&lt;br /&gt;
To remove MADDE directory:&lt;br /&gt;
 $ sudo rm -rf /usr/lib/madde&lt;br /&gt;
&lt;br /&gt;
== Another language version of this page ==&lt;br /&gt;
&lt;br /&gt;
* [[SDK/Docs/1.1/Memulai_dengan_SDK_MeeGo_untuk_Linux|Memulai dengan SDK Meego untuk Linux - Bahasa Indonesia]]&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-01T06:47:58Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Arch */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key .though it could work normally,it maybe is the reason of the questions  I want to know at the end  of this page  )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package build-2010.08.04-1.5.src.rpm  from http://repo.meego.com/MeeGo/tools/repos/fedora/13/src/ ,and run comand:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -ivh build-2010.08.04-1.5.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after that you can find them in /root/rpmbuild/  if you run as root.and you can use commands:'rpmbuild -ba &amp;lt;spec file&amp;gt;' to build a rpm,and install it by use 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
 &lt;br /&gt;
===Attention=== &lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should change  'lua' to 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf,&lt;br /&gt;
'/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04,I find 'qemu-arm' in /usr/local/bin,and run 'file /usr/local/bin' ,and it show 'dynamically linked',but it worked normal,and I was puzzled to this.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-01T06:02:32Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Installing for fedora13 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key .though it could work normally,it maybe is the reason of the questions  I want to know at the end  of this page  )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package build-2010.08.04-1.5.src.rpm  from http://repo.meego.com/MeeGo/tools/repos/fedora/13/src/ ,and run comand:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -ivh build-2010.08.04-1.5.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after that you can find them in /root/rpmbuild/  if you run as root.and you can use commands:'rpmbuild -ba &amp;lt;spec file&amp;gt;' to build a rpm,and install it by use 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
 &lt;br /&gt;
===Attention=== &lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should change  'lua' to 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf&lt;br /&gt;
 , '/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04,I find 'qemu-arm' in /usr/local/bin,and run 'file /usr/local/bin' ,and it show 'dynamically linked',but it worked normal,and I was puzzled to this.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS</id>
		<title>User:Hlzxy/Deatail Local Build Without OBS</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Hlzxy/Deatail_Local_Build_Without_OBS"/>
				<updated>2010-12-01T05:50:38Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: Created page with &amp;quot;== Building your package using build ==  A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.  =…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A task of mine is to build rpm packages without OBS,and it cost me a week to do it, and I record the process of it and some questions.&lt;br /&gt;
&lt;br /&gt;
=== Step1: Installing build===&lt;br /&gt;
&lt;br /&gt;
MeeGo use 'build' to work for this,We can get build package from http://repo.meego.com/MeeGo/tools/repos/ according to kind of your host,and another way to get build source package from http://www.gitorious.org/opensuse/build.&lt;br /&gt;
&lt;br /&gt;
==== Installing for ubuntu10.04 ====&lt;br /&gt;
&lt;br /&gt;
1.add the below line to /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.'apt-get update'&lt;br /&gt;
&lt;br /&gt;
You should see the following error: W: GPG error: http://repo.meego.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0BC7BEC479FC1F8A&lt;br /&gt;
&lt;br /&gt;
To add the repository public key use the following command:&lt;br /&gt;
&lt;br /&gt;
    gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A &lt;br /&gt;
    gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add - &lt;br /&gt;
&lt;br /&gt;
Now redo 'apt-get update' (I met the problem up,and it seems I failed to add the key .though it could work normally,it maybe is the reason of the questions  I want to know at the end  of this page  )&lt;br /&gt;
&lt;br /&gt;
3.apt-get install build&lt;br /&gt;
&lt;br /&gt;
==== Installing for fedora13 ====&lt;br /&gt;
&lt;br /&gt;
Way 1:&lt;br /&gt;
&lt;br /&gt;
1.run the lines of commands below as root&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt;REPO &amp;gt; /etc/yum.repos.d/meego-tools.repo&lt;br /&gt;
[meego-tools]&lt;br /&gt;
name=MeeGo Tools for Fedora&lt;br /&gt;
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/\$releasever&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=1&lt;br /&gt;
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
REPO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2.add gpg key &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A&lt;br /&gt;
gpg2 --export --armor 0BC7BEC479FC1F8A &amp;gt; /etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
&amp;lt;\pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3.install build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install build&lt;br /&gt;
&amp;lt;\pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(It seems I also failed to get the key ,but everything seem to be work well.I am very curious to it )&lt;br /&gt;
&lt;br /&gt;
Way 2:&lt;br /&gt;
 &lt;br /&gt;
Load the package build-2010.08.04-1.5.src.rpm  from http://repo.meego.com/MeeGo/tools/repos/fedora/13/src/ ,and run comand:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -ivh build-2010.08.04-1.5.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after that you can find them in /root/rpmbuild/  if you run as root.and you can use commands:'rpmbuild -ba &amp;lt;spec file&amp;gt;' to build a rpm,and install it by use 'rpm -ivh &amp;lt;rpm package&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
=== Step2: Building  rpm ===&lt;br /&gt;
&lt;br /&gt;
In fact,we build the rpm package with spec file or src.rpm package.&lt;br /&gt;
&lt;br /&gt;
If you already installed 'build' tools,you could find /usr/lib/build/configs/meego-1.0.conf.This file seems like for meego1.0,and in fact when we use it build a rpm of version 1.0 ,it will work directly&lt;br /&gt;
&lt;br /&gt;
Before building ,you should have a spec file or src.rpm package,and also you must run commands  below as root because of loading the dependency packages  automatic in the process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 wget http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/repodata/repomd.xml.key&lt;br /&gt;
 rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(I think the same importing once will be ok,and running the same importing will be failed)&lt;br /&gt;
&lt;br /&gt;
then you can start building: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/releases/1.0/core/repos/armv7l/packages/ --arch armv7l  cpio-2.11-1.2.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Complete this ,you will find the rpm package in /var/tmp/build-root/home/abuild/rpmbuild/RPMS/.&lt;br /&gt;
because 'build' will create a build system and initialize it every time by default, so you need move the result if you want to keep it.&lt;br /&gt;
 &lt;br /&gt;
===Attention=== &lt;br /&gt;
&lt;br /&gt;
====Version====&lt;br /&gt;
 &lt;br /&gt;
If you want to build the rpm of version 1.1,you should change  'lua' to 'liblua' in Preinstall of meego-1.0.conf. (for me ,it worked on fedora13,and failed on ubuntu10.04,if someone know that,please tell me)&lt;br /&gt;
&lt;br /&gt;
====Arch====&lt;br /&gt;
&lt;br /&gt;
If you want to build a armv7l rpm package,please sure the 'armv7l' or 'armv7el' in meego-1.0.conf&lt;br /&gt;
 , '/usr/lib/build/build' and '/usr/lib/build/Build.pm'. &lt;br /&gt;
If get the error: 'chroot: failed to run command `rpm': exec format error' or 'chroot: failed to run command `rpm': No such file or directory',you should be sure your qemu-arm set right: &lt;br /&gt;
&lt;br /&gt;
On fedora13,you can run 'file /usr/bin/qemu-arm', and if it show 'dynamically linked', you should  reset  it.you can run 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm',and sure it running well(uninstall all blocking packages),and run command again,and you will see the result of 'statically linked'.&lt;br /&gt;
&lt;br /&gt;
On unbuntu10.04,I find 'qemu-arm' in /usr/local/bin,and run 'file /usr/local/bin' ,and it show 'dynamically linked',but it worked normal,and I was puzzled to this.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Developing_in_a_MeeGo_Environment</id>
		<title>Developing in a MeeGo Environment</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Developing_in_a_MeeGo_Environment"/>
				<updated>2010-11-30T11:07:16Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Exec format error */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
This guide is a way to build packages for the MeeGo 'day one' release, before more proper developer tools are introduced.&lt;br /&gt;
&lt;br /&gt;
== Setting up your development environment ==&lt;br /&gt;
&lt;br /&gt;
To begin developing for the MeeGo 'day one' release, you will need to follow these steps:&lt;br /&gt;
&lt;br /&gt;
* NOTE: These instructions were tested on a Fedora 12 chroot (X86), your experience may vary with other distributions.&lt;br /&gt;
* Have access to 'root' on your development machine.&lt;br /&gt;
* [http://wiki.meego.com/Image_Creation#Requirements Satisfy the requirements for MIC2 installation]&lt;br /&gt;
* [http://wiki.meego.com/Image_Creation#Installation Download MIC2 from the git repository] (development tree)&lt;br /&gt;
* [http://wiki.meego.com/Image_Creation#Installation Install MIC2]&lt;br /&gt;
* For ARM, Install QEMU: Grab the qemu package for your system. Fedora one is at [http://build.moblin.org/build/devel:tools:building/Fedora_11/i586/qemu/qemu-arm-static-0.12.3-10.1.i386.rpm this url]&lt;br /&gt;
* After this, run 'qemu-binfmt-conf.sh' as root. This will enable your system to run ARM binaries and will have to be repeated at system startup.&lt;br /&gt;
* If you have Scratchbox and/or Maemo SDK installed, please follow [http://wiki.maemo.org/Mer/Build/Application_Building#Co-existing_with_Scratchbox these instructions to avoid conflicts]&lt;br /&gt;
* Download MeeGo development images for [http://repo.meego.com/MeeGo/devel/n900/images/meego-codedrop-ia32-developer-201003311106.img.bz2 MeeGo X86] and [http://repo.meego.com/MeeGo/devel/n900/images/meego-codedrop-arm-developer-201003311152.img.bz2 MeeGo ARM] and bzip2 -d them (they are 3GB loopback images)&lt;br /&gt;
* Or you can create your own development images with [[Media:Devel-ia32.ks|this kickstart file for X86]] or [[Media:Devel-arm.ks|this kickstart file for ARM]] and the instructions at [[Image_Creation_For_Beginners]]&lt;br /&gt;
&lt;br /&gt;
== Introducing the tools ==&lt;br /&gt;
&lt;br /&gt;
=== mic-chroot ===&lt;br /&gt;
&lt;br /&gt;
mic-chroot is a tool that allows you to 'chroot' into an existing MeeGo image in order to develop within it, without contaminating your developer machine's environment.  Chroot simply means to 'change the root' to a new location (so instead of your root being / on your dev machine, it will be the new root directory within the image). &lt;br /&gt;
&lt;br /&gt;
This restricts access to your real root and your real file system, and instead, uses the image filesystem as its root and filesystem. No contamination, and no effect on your development machine.&lt;br /&gt;
&lt;br /&gt;
With mic-chroot, you will effectively be able to modify and manipulate the image's filesystem as if you were running a shell within an installed image, without having to install the image.  When finished, you can also create a new MeeGo image based on your changes.&lt;br /&gt;
&lt;br /&gt;
=== Developer images ===&lt;br /&gt;
&lt;br /&gt;
The developer images contain the exact same packages as is installed when you try to build a package in the MeeGo OBS without any dependencies, along with some helper packages (vim, nano) to make chroot usage easier. The list of these packages can be seen in the kickstart file mentioned above.&lt;br /&gt;
&lt;br /&gt;
This is because, in the end, it will save you time when you want to upload your application into a builder system because it will make sure that you specify your package build dependencies correctly.&lt;br /&gt;
&lt;br /&gt;
You can in the development image chroot run 'yum install &amp;lt;package names&amp;gt;' and that way install your package build dependencies to the chroot to compile your package.&lt;br /&gt;
&lt;br /&gt;
== Building your package: Step by step ==&lt;br /&gt;
&lt;br /&gt;
Prerequisites:&lt;br /&gt;
&lt;br /&gt;
* It is assumed you have already made either a source rpm (.src.rpm) or a package (.spec and attached files) before these steps. For a guide how to create packaging for MeeGo, see [[Packaging]].&lt;br /&gt;
* You have already chosen an architecture to build your package towards in these steps. That is the development image &amp;lt;image-name&amp;gt;, either meego-codedrop-ia32*.img (X86) or meego-codedrop-arm*.img (ARM)&lt;br /&gt;
&lt;br /&gt;
=== Step 1: Chrooting into the development image ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-chroot &amp;lt;image-name&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
With this command, you are now transported into the root filesystem of the image. It is possible to exchange files with your normal file system through the /parentroot directory. You can also conduct yum install, yum remove and any other network related operations.&lt;br /&gt;
&lt;br /&gt;
=== Step 2: Setting up the build directories ===&lt;br /&gt;
&lt;br /&gt;
You only need to do this once, but you may want to clean up the directory and remake it once in a while. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/rpmbuild&lt;br /&gt;
cd ~/rpmbuild&lt;br /&gt;
mkdir -p SOURCES SPECS BUILD RPMS SRPMS&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 3: Staging source package for build ===&lt;br /&gt;
&lt;br /&gt;
You must change directory to the location of your sources.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd /parentroot/path/to/your/sources&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you have a source rpm (.src.rpm), you will need to extract it:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm2cpio &amp;lt;MyPkg&amp;gt;.src.rpm | cpio -idmv --no-absolute-filenames &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will result in a .spec file and maybe some attached files (patches, source tarball, etc). The .spec file is in this guide called package.spec.&lt;br /&gt;
&lt;br /&gt;
When you have a .spec file you need to place it in ~/rpmbuild/SPECS and the remaining files in ~/rpmbuild/SOURCES.&lt;br /&gt;
&lt;br /&gt;
=== Step 4: Installing your build dependencies ===&lt;br /&gt;
&lt;br /&gt;
You can see your build dependencies in the package.spec file, which is the lines starting with BuildRequires. Those packages can then be installed using 'yum install':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install &amp;lt;package names&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 5: Building your package ===&lt;br /&gt;
&lt;br /&gt;
To build your package, you must then run the following command, where package.spec is the name of your spec file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpmbuild -ba ~/rpmbuild/SPECS/package.spec &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 6: Enjoying your built package ===&lt;br /&gt;
&lt;br /&gt;
Provided the build completed without errors, you can now see the resulting rpms in ~/rpmbuild/RPMS/. You can transfer these back to your filesystem through the /parentroot directory and you can then transfer these to your MeeGo device, virtual machine, etc and install them there.&lt;br /&gt;
&lt;br /&gt;
== Including your packages in a MeeGo image ==&lt;br /&gt;
Before reading these sections, we suggest to first read [[Image Creation For Beginners]] and [[Image Creation]]&lt;br /&gt;
&lt;br /&gt;
This will give you the basics of what you need to generate a basic MeeGo image.&lt;br /&gt;
&lt;br /&gt;
Specifically, there are important details about how to modify a .ks file here: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
KickStart .ks files are the main configuration file that the Image Creator uses to create images, and the brunt of what is talked about in this section has to do with modifying your .ks file.&lt;br /&gt;
&lt;br /&gt;
=== Recreating a standard MeeGo Image ===&lt;br /&gt;
To create a standard MeeGo image, please follow the instructions in [[Image Creation For Beginners]].&lt;br /&gt;
&lt;br /&gt;
=== Adding more MeeGo packages to a MeeGo Image ===&lt;br /&gt;
Here is a scenario where you want to add additional MeeGo packages to the standard MeeGo image.&lt;br /&gt;
&lt;br /&gt;
First, obtain a standard MeeGo .ks file [http://repo.meego.com/MeeGo/ from here]&lt;br /&gt;
&lt;br /&gt;
Check the [http://repo.meego.com/MeeGo/ MeeGo repos] and make sure that the packages you're looking doesn't already exist in MeeGo&lt;br /&gt;
&lt;br /&gt;
Now within the .ks file, add the MeeGo package names that you want included in this new image.  For more on how add packages in a .ks file, please read this important section here: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
Run this modified .ks file through the Image Creator MIC.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator -c my-new-ks.ks -f livecd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For more options and details on image creation and MIC, go here: [[Image_Creation]]&lt;br /&gt;
&lt;br /&gt;
Your new image will now be a standard MeeGo image including the new packages you've added.&lt;br /&gt;
&lt;br /&gt;
Again, this wiki is of great value to you when manipulating and navigating through .ks files: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
It is the key to mastering the art of creating custom-made MeeGo images.&lt;br /&gt;
&lt;br /&gt;
=== Adding your own code &amp;amp; and non-MeeGo packages to a MeeGo Image ===&lt;br /&gt;
&lt;br /&gt;
If you have your own packages on your developer machine that you want to test out by creating a new MeeGo image with them.&lt;br /&gt;
&lt;br /&gt;
First obtain a standard MeeGo .ks file. This is possible through the repository.&lt;br /&gt;
&lt;br /&gt;
To add a new repo to your .ks file, go here for easy and detailed steps: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
Once you add the new repo(s) that the Image Creator will pull from, you now have to list the packages you want to pull down from these repos.  For instructions on adding packages to your .ks file, go here: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
If you have local rpms on your local machine that you would like to include, you need to first create a local repo on your machine.  Move your rpms into a directory.  Then create a local repo with that directory like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mv *.rpms /home/user/my-local-repo&lt;br /&gt;
&lt;br /&gt;
$ createrepo -d /home/user/my-local-repo&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This turns /home/user/my-local-repo into a local repository that you can point your .ks file to.  For steps on how to add a new repo, go here: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
And again, make sure you have listed in your .ks all the packages you would like to include in your new MeeGo Image.&lt;br /&gt;
&lt;br /&gt;
Now, simply run this new .ks file through MIC, the Image Creator.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator -c my-new-ks.ks -f livecd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For more options and details on image creation and MIC, go here: [[Image_Creation]]&lt;br /&gt;
&lt;br /&gt;
Your new image will now be a standard MeeGo image including the new packages and repos you've added. &lt;br /&gt;
&lt;br /&gt;
Again, this wiki is of great value to you when manipulating and navigating through .ks files: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
It is the key to mastering the art of creating custom-made MeeGo images.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Error: chroot: cannot run command X: No such file or directory ===&lt;br /&gt;
&lt;br /&gt;
Most likely cause: You have Scratchbox1 installed and you need to follow instructions given in Prerequisites for ARM.&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
&lt;br /&gt;
Most likely cause: You have not run qemu-binfmt-misc.sh as root.&lt;br /&gt;
&lt;br /&gt;
Maybe qemu-arm is not right set,try :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
see here:[[Local_Build_Without_OBS_Needed]]&lt;br /&gt;
&lt;br /&gt;
=== mmap: permission denied ===&lt;br /&gt;
&lt;br /&gt;
Most likely cause: VDSO&lt;br /&gt;
&lt;br /&gt;
Do this as root:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
echo 0 &amp;gt; /proc/sys/vm/vdso_enabled&lt;br /&gt;
echo 4096 &amp;gt; /proc/sys/vm/mmap_min_addr&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Developing_in_a_MeeGo_Environment</id>
		<title>Developing in a MeeGo Environment</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Developing_in_a_MeeGo_Environment"/>
				<updated>2010-11-29T01:49:17Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
This guide is a way to build packages for the MeeGo 'day one' release, before more proper developer tools are introduced.&lt;br /&gt;
&lt;br /&gt;
== Setting up your development environment ==&lt;br /&gt;
&lt;br /&gt;
To begin developing for the MeeGo 'day one' release, you will need to follow these steps:&lt;br /&gt;
&lt;br /&gt;
* NOTE: These instructions were tested on a Fedora 12 chroot (X86), your experience may vary with other distributions.&lt;br /&gt;
* Have access to 'root' on your development machine.&lt;br /&gt;
* [http://wiki.meego.com/Image_Creation#Requirements Satisfy the requirements for MIC2 installation]&lt;br /&gt;
* [http://wiki.meego.com/Image_Creation#Installation Download MIC2 from the git repository] (development tree)&lt;br /&gt;
* [http://wiki.meego.com/Image_Creation#Installation Install MIC2]&lt;br /&gt;
* For ARM, Install QEMU: Grab the qemu package for your system. Fedora one is at [http://build.moblin.org/build/devel:tools:building/Fedora_11/i586/qemu/qemu-arm-static-0.12.3-10.1.i386.rpm this url]&lt;br /&gt;
* After this, run 'qemu-binfmt-conf.sh' as root. This will enable your system to run ARM binaries and will have to be repeated at system startup.&lt;br /&gt;
* If you have Scratchbox and/or Maemo SDK installed, please follow [http://wiki.maemo.org/Mer/Build/Application_Building#Co-existing_with_Scratchbox these instructions to avoid conflicts]&lt;br /&gt;
* Download MeeGo development images for [http://repo.meego.com/MeeGo/devel/n900/images/meego-codedrop-ia32-developer-201003311106.img.bz2 MeeGo X86] and [http://repo.meego.com/MeeGo/devel/n900/images/meego-codedrop-arm-developer-201003311152.img.bz2 MeeGo ARM] and bzip2 -d them (they are 3GB loopback images)&lt;br /&gt;
* Or you can create your own development images with [[Media:Devel-ia32.ks|this kickstart file for X86]] or [[Media:Devel-arm.ks|this kickstart file for ARM]] and the instructions at [[Image_Creation_For_Beginners]]&lt;br /&gt;
&lt;br /&gt;
== Introducing the tools ==&lt;br /&gt;
&lt;br /&gt;
=== mic-chroot ===&lt;br /&gt;
&lt;br /&gt;
mic-chroot is a tool that allows you to 'chroot' into an existing MeeGo image in order to develop within it, without contaminating your developer machine's environment.  Chroot simply means to 'change the root' to a new location (so instead of your root being / on your dev machine, it will be the new root directory within the image). &lt;br /&gt;
&lt;br /&gt;
This restricts access to your real root and your real file system, and instead, uses the image filesystem as its root and filesystem. No contamination, and no effect on your development machine.&lt;br /&gt;
&lt;br /&gt;
With mic-chroot, you will effectively be able to modify and manipulate the image's filesystem as if you were running a shell within an installed image, without having to install the image.  When finished, you can also create a new MeeGo image based on your changes.&lt;br /&gt;
&lt;br /&gt;
=== Developer images ===&lt;br /&gt;
&lt;br /&gt;
The developer images contain the exact same packages as is installed when you try to build a package in the MeeGo OBS without any dependencies, along with some helper packages (vim, nano) to make chroot usage easier. The list of these packages can be seen in the kickstart file mentioned above.&lt;br /&gt;
&lt;br /&gt;
This is because, in the end, it will save you time when you want to upload your application into a builder system because it will make sure that you specify your package build dependencies correctly.&lt;br /&gt;
&lt;br /&gt;
You can in the development image chroot run 'yum install &amp;lt;package names&amp;gt;' and that way install your package build dependencies to the chroot to compile your package.&lt;br /&gt;
&lt;br /&gt;
== Building your package: Step by step ==&lt;br /&gt;
&lt;br /&gt;
Prerequisites:&lt;br /&gt;
&lt;br /&gt;
* It is assumed you have already made either a source rpm (.src.rpm) or a package (.spec and attached files) before these steps. For a guide how to create packaging for MeeGo, see [[Packaging]].&lt;br /&gt;
* You have already chosen an architecture to build your package towards in these steps. That is the development image &amp;lt;image-name&amp;gt;, either meego-codedrop-ia32*.img (X86) or meego-codedrop-arm*.img (ARM)&lt;br /&gt;
&lt;br /&gt;
=== Step 1: Chrooting into the development image ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-chroot &amp;lt;image-name&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
With this command, you are now transported into the root filesystem of the image. It is possible to exchange files with your normal file system through the /parentroot directory. You can also conduct yum install, yum remove and any other network related operations.&lt;br /&gt;
&lt;br /&gt;
=== Step 2: Setting up the build directories ===&lt;br /&gt;
&lt;br /&gt;
You only need to do this once, but you may want to clean up the directory and remake it once in a while. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/rpmbuild&lt;br /&gt;
cd ~/rpmbuild&lt;br /&gt;
mkdir -p SOURCES SPECS BUILD RPMS SRPMS&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 3: Staging source package for build ===&lt;br /&gt;
&lt;br /&gt;
You must change directory to the location of your sources.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd /parentroot/path/to/your/sources&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you have a source rpm (.src.rpm), you will need to extract it:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm2cpio &amp;lt;MyPkg&amp;gt;.src.rpm | cpio -idmv --no-absolute-filenames &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will result in a .spec file and maybe some attached files (patches, source tarball, etc). The .spec file is in this guide called package.spec.&lt;br /&gt;
&lt;br /&gt;
When you have a .spec file you need to place it in ~/rpmbuild/SPECS and the remaining files in ~/rpmbuild/SOURCES.&lt;br /&gt;
&lt;br /&gt;
=== Step 4: Installing your build dependencies ===&lt;br /&gt;
&lt;br /&gt;
You can see your build dependencies in the package.spec file, which is the lines starting with BuildRequires. Those packages can then be installed using 'yum install':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install &amp;lt;package names&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 5: Building your package ===&lt;br /&gt;
&lt;br /&gt;
To build your package, you must then run the following command, where package.spec is the name of your spec file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpmbuild -ba ~/rpmbuild/SPECS/package.spec &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 6: Enjoying your built package ===&lt;br /&gt;
&lt;br /&gt;
Provided the build completed without errors, you can now see the resulting rpms in ~/rpmbuild/RPMS/. You can transfer these back to your filesystem through the /parentroot directory and you can then transfer these to your MeeGo device, virtual machine, etc and install them there.&lt;br /&gt;
&lt;br /&gt;
== Including your packages in a MeeGo image ==&lt;br /&gt;
Before reading these sections, we suggest to first read [[Image Creation For Beginners]] and [[Image Creation]]&lt;br /&gt;
&lt;br /&gt;
This will give you the basics of what you need to generate a basic MeeGo image.&lt;br /&gt;
&lt;br /&gt;
Specifically, there are important details about how to modify a .ks file here: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
KickStart .ks files are the main configuration file that the Image Creator uses to create images, and the brunt of what is talked about in this section has to do with modifying your .ks file.&lt;br /&gt;
&lt;br /&gt;
=== Recreating a standard MeeGo Image ===&lt;br /&gt;
To create a standard MeeGo image, please follow the instructions in [[Image Creation For Beginners]].&lt;br /&gt;
&lt;br /&gt;
=== Adding more MeeGo packages to a MeeGo Image ===&lt;br /&gt;
Here is a scenario where you want to add additional MeeGo packages to the standard MeeGo image.&lt;br /&gt;
&lt;br /&gt;
First, obtain a standard MeeGo .ks file [http://repo.meego.com/MeeGo/ from here]&lt;br /&gt;
&lt;br /&gt;
Check the [http://repo.meego.com/MeeGo/ MeeGo repos] and make sure that the packages you're looking doesn't already exist in MeeGo&lt;br /&gt;
&lt;br /&gt;
Now within the .ks file, add the MeeGo package names that you want included in this new image.  For more on how add packages in a .ks file, please read this important section here: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
Run this modified .ks file through the Image Creator MIC.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator -c my-new-ks.ks -f livecd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For more options and details on image creation and MIC, go here: [[Image_Creation]]&lt;br /&gt;
&lt;br /&gt;
Your new image will now be a standard MeeGo image including the new packages you've added.&lt;br /&gt;
&lt;br /&gt;
Again, this wiki is of great value to you when manipulating and navigating through .ks files: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
It is the key to mastering the art of creating custom-made MeeGo images.&lt;br /&gt;
&lt;br /&gt;
=== Adding your own code &amp;amp; and non-MeeGo packages to a MeeGo Image ===&lt;br /&gt;
&lt;br /&gt;
If you have your own packages on your developer machine that you want to test out by creating a new MeeGo image with them.&lt;br /&gt;
&lt;br /&gt;
First obtain a standard MeeGo .ks file. This is possible through the repository.&lt;br /&gt;
&lt;br /&gt;
To add a new repo to your .ks file, go here for easy and detailed steps: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
Once you add the new repo(s) that the Image Creator will pull from, you now have to list the packages you want to pull down from these repos.  For instructions on adding packages to your .ks file, go here: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
If you have local rpms on your local machine that you would like to include, you need to first create a local repo on your machine.  Move your rpms into a directory.  Then create a local repo with that directory like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mv *.rpms /home/user/my-local-repo&lt;br /&gt;
&lt;br /&gt;
$ createrepo -d /home/user/my-local-repo&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This turns /home/user/my-local-repo into a local repository that you can point your .ks file to.  For steps on how to add a new repo, go here: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
&lt;br /&gt;
And again, make sure you have listed in your .ks all the packages you would like to include in your new MeeGo Image.&lt;br /&gt;
&lt;br /&gt;
Now, simply run this new .ks file through MIC, the Image Creator.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mic-image-creator -c my-new-ks.ks -f livecd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For more options and details on image creation and MIC, go here: [[Image_Creation]]&lt;br /&gt;
&lt;br /&gt;
Your new image will now be a standard MeeGo image including the new packages and repos you've added. &lt;br /&gt;
&lt;br /&gt;
Again, this wiki is of great value to you when manipulating and navigating through .ks files: [[Image_Creation#Modifying_your_.ks]]&lt;br /&gt;
It is the key to mastering the art of creating custom-made MeeGo images.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Error: chroot: cannot run command X: No such file or directory ===&lt;br /&gt;
&lt;br /&gt;
Most likely cause: You have Scratchbox1 installed and you need to follow instructions given in Prerequisites for ARM.&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
&lt;br /&gt;
Most likely cause: You have not run qemu-binfmt-misc.sh as root.&lt;br /&gt;
&lt;br /&gt;
Maybe qemu-arm is not right set,try :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== mmap: permission denied ===&lt;br /&gt;
&lt;br /&gt;
Most likely cause: VDSO&lt;br /&gt;
&lt;br /&gt;
Do this as root:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
echo 0 &amp;gt; /proc/sys/vm/vdso_enabled&lt;br /&gt;
echo 4096 &amp;gt; /proc/sys/vm/mmap_min_addr&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2010-11-29T01:39:16Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Exec format error */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set.&lt;br /&gt;
Try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2010-11-29T01:38:44Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: /* Exec format error */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem on fedora13 when  using 'build' to create a armv7l rpm package.&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set&lt;br /&gt;
try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
the other commands maybe useful:&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Local_Build_Without_OBS_Needed</id>
		<title>Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Local_Build_Without_OBS_Needed"/>
				<updated>2010-11-29T01:37:34Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Building your package using build ==&lt;br /&gt;
&lt;br /&gt;
A more convenient package build way is to use 'build' which is a project from OpenSUSE, MeeGo build infrastructure used it.&lt;br /&gt;
&lt;br /&gt;
You can get build binary package from http://repo.meego.com/MeeGo/tools/repos/ per your Linux distribution, if your Linux distribution isn't there, you can get build source package from http://www.gitorious.org/opensuse/build to build it yourself manually.&lt;br /&gt;
	&lt;br /&gt;
After you install it ( I suppose you know how to install a package on your Linux), you can run “build –help” to get help info.&lt;br /&gt;
&lt;br /&gt;
You must run build as root. If your network needs proxy, please export proxy environment variables, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export http_proxy=http://proxy.yourcompany.com:8080/&lt;br /&gt;
export no_proxy=localhost,127.0.0.0/8,.yourcompany.com, 172.16.0.0/16&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
If you used to run “sudo build …” and your network needs proxy, please ensure sudo to inherit proxy environment variables, you can do this by adding the below line to /etc/sudoers&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    env_keep += &amp;quot;http_proxy no_proxy HTTP_PROXY NO_PROXY&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build also will check rpm package signature, so you must import public key of repository you're using, for example:&lt;br /&gt;
&lt;br /&gt;
For http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/&lt;br /&gt;
&lt;br /&gt;
You can get its public key for http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ wget http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/repodata/repomd.xml.key&lt;br /&gt;
$ sudo rpm --import repomd.xml.key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
This command will build a cpio binary package for MeeGo.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio-2.11-2.6.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Optionally, you also can use spec file to build it, for this case, build will find your source tar ball and patches under current work dir.&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ --arch i686 cpio.spec&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
build will base your repo URL to cache your repo, so please use the same URL string for the same repo every time (URL with / at the end of it and the same URL without / at the end of it will result in different cache dirs), you can use multiple --repository options to specify multiple repos, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
build --repository http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/ia32/packages/ \&lt;br /&gt;
    --repository http://repo.meego.com/MeeGo/builds/trunk/preview/netbook/repos/ia32/packages/ \&lt;br /&gt;
    --arch i686 meego-panel-applications-0.2.3-1.10.src.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
The default cache dir is /var/cache/build, you can use option –cachedir to set to other dir.&lt;br /&gt;
	&lt;br /&gt;
The default BUILDROOT dir is /var/tmp/build-root, you can use --root option to specify one more dir, once build is done, you can get your binary package in BUILDROOT, for example:&lt;br /&gt;
	 &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/SRPMS/cpio-2.11-2.meego.src.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-2.11-2.meego.i586.rpm&lt;br /&gt;
Wrote: /home/abuild/rpmbuild/RPMS/i586/cpio-debuginfo-2.11-2.meego.i586.rpm&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
Your cpio binary package is /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/2.11-2.meego.i586.rpm&lt;br /&gt;
==  Troubleshooting (ARM) ==&lt;br /&gt;
&lt;br /&gt;
=== Exec format error ===&lt;br /&gt;
Meet this problem on fedora13 when  using 'build' to create a armv7l rpm package&lt;br /&gt;
one of reasons: maybe 'qemu-arm' is not right set&lt;br /&gt;
try command:'file /usr/bin/qemu-arm' ,and if its output show 'dynamically linked',and the problem maye is here,and it should be  'statically linked'.you can use commands 'rpm -i http://download.opensuse.org/repositories/home:/dl9pf:/qemu/Fedora_12/i386/qemu-devel-0.13git2010.06.24.1826-8.1.i386.rpm' to reinstall this part, and maybe you will meet some problem because of its dependencies ,and  you can uninstall all of them first.&lt;br /&gt;
the other commands maybe useful:&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Talk:Local_Build_Without_OBS_Needed</id>
		<title>Talk:Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Talk:Local_Build_Without_OBS_Needed"/>
				<updated>2010-11-26T10:48:09Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: Help!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Is anybody  met this error:&lt;br /&gt;
chroot: failed to run command `rpm': Exec format error&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
and  how  I should do to solve it?&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Talk:Local_Build_Without_OBS_Needed</id>
		<title>Talk:Local Build Without OBS Needed</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Talk:Local_Build_Without_OBS_Needed"/>
				<updated>2010-11-25T08:47:38Z</updated>
		
		<summary type="html">&lt;p&gt;Z1x2y3121: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;if anybody met  this error  when build package use src.rpm:&lt;br /&gt;
rpm: error while loading shared libraries: liblua-5.1.so: cannot open shared object file: No such file or directory&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
and who know how to solve it&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
and why I  can not use this command : rpm --import remod.xml.key      more times ,it always result to &amp;quot;fail&amp;quot;&lt;/div&gt;</summary>
		<author><name>Z1x2y3121</name></author>	</entry>

	</feed>