Chris
Chris

Reputation: 407

Yocto busybox overriding coreutils

I am attempting to install the 'join' command into my yocto image. I already have busybox installed and this does not have the functionality of join but does have a subset of coreutils. Coreutils does have the functionality of join and so I need to install it from the coreutils recipe.

If I install both busybox and coreutils using just their standard recipe with IMAGE_INSTALL += some of the programs are sym-linked to busybox and some are to coreutils which is a problem for me. How do I tell the coreutils package just to install 'join' on the image and ignore all other coreutils data?

Upvotes: 5

Views: 5917

Answers (1)

Richard Purdie
Richard Purdie

Reputation: 2328

The utilities in coreutils are all in a single package so you can't just install one of them unfortunately.

The system uses the update-alternatives mechanism to determine which utility to install. Each provider is given a 'priority' and the highest priority wins. In busybox, the recipe says ALTERNATIVE_PRIORITY = "50", in coreutils, ALTERNATIVE_PRIORITY = "100".

So to make this work, could change the default value in coreutils to "40", and then also set ALTERNATIVE_PRIORITY[join] = "100", which should let join come from coreutils but everything else from busybox.

Upvotes: 9

Related Questions