[Clfs-dev] [CLFS-EMBEDDED] Musl-libc

Kirk Terrell knjterrell at mybluelight.com
Mon Jul 22 08:20:07 PDT 2013


On 07/22/2013 04:55 AM, Andrew Bradford wrote:
> On Sat, Jul 20, 2013, at 02:35 PM, William Harrington wrote:
>>
>> On Jul 20, 2013, at 12:16 PM, Kirk Terrell wrote:
>>
>>> The most troublesome one was the mount command wouldn't compile
>>> because of missing rpc/rpc.h header file. I was able to boot a QEMU
>>> Malta system, but the initscript listed failures due to missing
>>> mount commands. It looks like the Musl based systems involve a
>>> number of patches e.g. https://github.com/chneukirchen/sabotage/blob/master/KEEP/busybox.patch
>>> .
>>
>> Interesting. Seeing how embedded systems make use of nis quite a bit,
>> and rpc provides that support, then I suspect this may help:
>>
>> I ran across libdrpc
>>
>> http://www.openwall.com/lists/musl/2012/12/24/1
>
> You may also want to check what Sabotage[1] does in their build to work
> around this.  I haven't checked myself but rofl0r was the one who nudged
> me towards musl (via github interaction).
>
> [1]:https://github.com/rofl0r/sabotage
>
> -Andrew
> _______________________________________________
> Clfs-dev mailing list
> Clfs-dev at lists.cross-lfs.org
> http://lists.cross-lfs.org/listinfo.cgi/clfs-dev-cross-lfs.org
>
>


I did poke around rofl0r/sabotage. I guess I was looking at the old 
sabatoge. The busybox config file tat they use unsets 
CONFIG_FEATURE_HAVE_RPC, CONFIG_FEATURE_INETD_RPC as well as other stuff 
that I couldn't identify. I tried to just turn those off in the CLFS std 
config, but they were re-activated during the make process. I was able 
to get the mount applet to compile. My takeaway would be -

pros
	no configuration
	small library size 905k for libc.so
	fast compile

cons
	header files don't line up with other c libraries - looking at the 
change log it appears that this is being actively worked on.
	No rpc support - which could be remedied with libdrpc (h/t). I havent 
tried to compile this library w/ musl.


In a different vein - it looks like buildroot  uses a generic uClibc 
config file and then modifies it based on system configuration. It might 
be feasible to use this approach and some sed commands to flesh out the 
config file to match the system configuration. You are already doing 
this by the OABI/EABI in arm, etc.


	
____________________________________________________________
30-second trick for a flat belly
This daily 30-second trick BOOSTS your body's #1 fat-burning hormone
http://thirdpartyoffers.netzero.net/TGL3341/51ed4d90a3c7f4d8e4b37st02duc



More information about the Clfs-dev mailing list