[poky] Getting error in linux-yocto kernel during build.

Gary Thomas gary at mlbassoc.com
Fri Sep 16 08:22:31 PDT 2011


On 2011-09-16 09:06, Richard Purdie wrote:
> On Fri, 2011-09-16 at 10:35 -0400, Bruce Ashfield wrote:
>> On Fri, Sep 16, 2011 at 10:24 AM, Bruce Ashfield
>> <bruce.ashfield at gmail.com>  wrote:
>>> On Fri, Sep 16, 2011 at 8:38 AM, chinmaya hoshing<cahoshing at gmail.com>  wrote:
>>>> Hi ,
>>>> I am building poky-build minimal live image for fishriver machine on 64 bit
>>>> host machine.
>>>> As I am having limited internet band-width, so I have identified all the
>>>> dependent packages and setup a Apache server on my local system so that I
>>>> can redirect the SRC_URI of all the packages to my local server.
>>>> I have changed the related recipes to build  minimal live image, and modify
>>>> bitbake.conf to add LOCAL_MIRROR="xxx.xxx.xxx.xxx/packages" , in side
>>>> packages I have tars which  was present "build/download" folder.
>>>> While building linux-yocto, fetch and unpack was done but during kernel
>>>> checkout whatever git commits I have done previously in poky source were
>>>> flashed out (lost),  also the only recipe remains in  meta/recipe-kernel/ is
>>>> linux .
>>>>
>>>> Following are the changes made in
>>>> meta/recipes-kernel/linux/linux-yocto_git.bb
>>>> #SRCREV_FORMAT = "meta_machine"
>>>> SRC_URI = "${LOCAL_MIRROR}/linux-yocto-3.0-3.0.tar.bz2"
>>>>   // This tar file I took from
>>>> http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-3.0/snapshot/linux-yocto-3.0-3.0.tar.bz2
>>>> PV = "${LINUX_VERSION}"
>>>> In file meta-intel/meta-fishriver/conf/machine/fishriver.conf I modified
>>>> PREFERRED_VERSION_linux-yocto = "3.0"                (which  was
>>>> PREFERRED_VERSION_linux-yocto = "3.0+git%" )
>>>>
>>>> Can any one help me to find the solution that if I had to pull linux kernel
>>>> source from tar file or such and not from git repository. What things I have
>>>> to do.
>>>
>>> The linux-yocto recipes are designed from the ground up to work on a git
>>> based repository, and there's really no way to get around that fact (and no
>>> plans to make any changes in this area).
>>
>> Thinking further about this, if the tgz actually was just a tarball of the git
>> repositories (including the git blobs), it could work.
>
> This is exactly what we use behind the scenes for mirroring the git
> repositories so this should work. It should be possible to use our
> existing PREMIRROR code to avoid having to rewrite individual recipes
> though.
>
> It will firstly unpack the tarball, then access whether the revisions it
> needs are present. If they're not, it will then (and only then) try and
> fetch them over the network. If the tarball is complete it will
> therefore not touch the network. If its incomplete it will only fetch
> the different (delta).

This does work as advertised - I use it exclusively.  I have a local
package cache which I use with PREMIRROR and I set BB_NO_NETWORK to
prove/protect that no network access is required.

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------



More information about the poky mailing list