[yocto] Creating a recipe to create /usr/local

Chan Kit Yu yuchankit at gmail.com
Tue Dec 2 00:12:33 PST 2014


For 2. , I also have the same issue with gstreamer1.0-plugins good.
Although the image does include some plugins, I noticed that the image
doesn't have complete plugins under gstreamer1.0-plugins-good unless I
manually installed all the packages gstreamer1.0-plugins-good* under
tmp/deploy/rpm/corei7_64 directory.

On Mon, Dec 1, 2014 at 10:19 AM, Chan Kit Yu <yuchankit at gmail.com> wrote:
> Hi Paul,
>
> Your approach worked and I thank you for that.
>
> However I have some more unrelated questions (if you don't mind):
>
> 1. I noticed some mainstream Python modules that are supposed to come
> with default Python installation are not present. I take the example
> of sqlite3 module not present in default Python 2.7.3 installation. I
> need to include python-sqlite3 in local.conf before I got that baked
> inside the image. So my question is how can I check what modules are
> installed (aside from doing smart search command) by a default Python
> 2 installation. I baked my image using core-image-sato-sdk command.
> 2. I found out that the startx command tries to start xfce by default
> (judging from xfce* error that I got) and therefore fails since I
> don't have xfce installed. So how do I configure startx to start other
> desktop environment in Yocto? Also, the startx command does not seem
> to go to init 5 (I configured mine to start in init 3) and therefore
> fails if I don't type init 5 command before it starts. And if I put
> init 5 command, it jumps straight to the matchbox desktop. I did some
> forensics on the init command and I only need to modify ~/.Xsession
> file in order to change what DE init 5 would start. TL:DR : Is init 5
> the canonical way to start an X desktop instead of startx ?
>
>
> Thanks again,
> Chan Kit
>
>
>
>
>
> On Fri, Nov 28, 2014 at 7:33 PM, Chan Kit Yu <yuchankit at gmail.com> wrote:
>> Thanks for saving me from myself. I will try it out and let you know my
>> results
>>
>> On Nov 28, 2014 7:22 PM, "Paul Barker" <paul at paulbarker.me.uk> wrote:
>>>
>>> On 27 November 2014 at 07:09, Chan Kit Yu <yuchankit at gmail.com> wrote:
>>> > Hi all,
>>> >
>>> > I'm not sure if emailing this is the most appropriate way and I
>>> > apologize in advance if that's not.
>>> >
>>> > I have some scripts that require /usr/local to exist in Yocto and
>>> > therefore I need to a recipe to create /usr/local directory. I tried
>>> > to accomplish this with a simple recipe but that proved futile.
>>> >
>>> > Although bitbaking that particular recipe was fine, trying to include
>>> > that package in local.conf resulted errors and those errors are
>>> > gibberish (it listed all the packages inside the image that I was
>>> > trying to comple) . Here's my simple stupid recipe:
>>> >
>>> > SUMMARY= "...."
>>> > LICENSE = "something...."
>>> > ...
>>> > ...
>>> > INSANE_SKIP_${PN} = "installed-vs-shipped"
>>>
>>> This line is hiding the warning that a file has been installed (copied
>>> into ${D} by your do_install function) but not shipped (which means
>>> placed in an actual package).
>>>
>>> /usr/local isn't usually populated so isn't included in a package by
>>> default, you can modify FILES_xxx to change what is included in the
>>> package 'xxx'. In a recipe the main package name (which is based off
>>> the recipe file name), is stored in ${PN}.
>>>
>>> So basically, you need to add something like:
>>>     FILES_${PN} += "/usr/local"
>>>
>>> Also, you should never need to use INSANE_SKIP unless you're doing
>>> something that is actually insane. Those warnings are there for a
>>> reason!
>>>
>>> >
>>> > do_install(){
>>> >      mkdir -p ${D}/usr/local
>>> > }
>>> >
>>> > Is there a better way (or preferably the canonical way) to do this?
>>> >
>>> > Thanks,
>>> > Chan Kit
>>>
>>> Cheers,
>>>
>>> --
>>> Paul Barker
>>>
>>> Email: paul at paulbarker.me.uk
>>> http://www.paulbarker.me.uk



More information about the yocto mailing list