[OE-core] [oe] initial support for musl libc with OE/Yocto Project

Khem Raj raj.khem at gmail.com
Sun Mar 30 16:48:53 UTC 2014


On Sun, Mar 30, 2014 at 8:43 AM, Paul Barker <paul at paulbarker.me.uk> wrote:
> On 30 March 2014 05:17, Khem Raj <raj.khem at gmail.com> wrote:
>> On Thu, Mar 27, 2014 at 5:53 AM, Paul Barker <paul at paulbarker.me.uk> wrote:
>>> On 26 March 2014 22:12, Burton, Ross <ross.burton at intel.com> wrote:
>>>> On 26 March 2014 22:04, Khem Raj <raj.khem at gmail.com> wrote:
>>>>> There were interest in other threads in having musl as an alternative
>>>>> to eglibc/uclibc that we already have in OE, in that direction I have
>>>>> poured in my on and off work and put it into a contrib tree
>>>>
>>>> Blimey Khem that was quick. :)
>>>>
>>>
>>> Agreed!
>>>
>>> I wonder if it's worth splitting this out into its own layer though
>>
>> I thought about it and since class/conf changes that need to go in into OE-core
>> first I kept it as it is (lazyness too). I think once the core support
>> is available in OE-core
>> we can spin the recipes into a layer of its own.
>>
>>> (with fixes done via bbappends) so that it's easy for multiple people
>>> to contribute to. It would also mean it doesn't need rebasing onto
>>> master all the time.
>>>
>>> I'd definitely like to get involved with this. In particular I can
>>> ensure opkg (both current release and development branch) work with
>>> musl and see if some of my preferred software from meta-oe will build
>>> (vim, htop, etc).
>>
>> start with what we have. Once master opens up I would propose the needed
>> changes to OE-core and spin a layer
>>
>
> I did a quick 'bitbake -k core-image-minimal' to see what's currently
> failing. Full logs and config at
> http://www.paulbarker.me.uk/musl-build/
>
> Build Configuration:
> BB_VERSION        = "1.21.1"
> BUILD_SYS         = "x86_64-linux"
> NATIVELSBSTRING   = "Ubuntu-12.04"
> TARGET_SYS        = "arm-oe-linux-musleabi"
> MACHINE           = "qemuarm"
> DISTRO            = "nodistro"
> DISTRO_VERSION    = "nodistro.0"
> TUNE_FEATURES     = "armv5 thumb dsp"
> TARGET_FPU        = "soft"
> meta              = "kraj/musl:faafa7022ed057d55c131c456d1bdd5dfa3d2517"
>
> Summary: 6 tasks failed:
>   openembedded-core/meta/recipes-support/attr/attr_2.4.47.bb, do_compile
>   openembedded-core/meta/recipes-devtools/python/python_2.7.3.bb, do_compile
>   openembedded-core/meta/recipes-core/util-linux/util-linux_2.24.1.bb,
> do_compile
>   openembedded-core/meta/recipes-core/sysvinit/sysvinit_2.88dsf.bb, do_compile
>   openembedded-core/meta/recipes-core/busybox/busybox_1.22.1.bb, do_compile
>   openembedded-core/meta/recipes-core/glib-2.0/glib-2.0_2.38.2.bb, do_compile
>
> I can see for util-linux that we need to implement qsort_r().
>
> Busybox probably just needs config changes:
> http://wiki.musl-libc.org/wiki/Building_Busybox


I already have local fix for busy box.



More information about the Openembedded-core mailing list