Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <51FDC2E3.7010807@mybluelight.com>
Date: Sat, 03 Aug 2013 19:56:35 -0700
From: Kirk Terrell <knjterrell@...luelight.com>
To: musl@...ts.openwall.com
Subject: Re: Embedded distro

On 08/03/2013 12:57 PM, Rich Felker wrote:
> On Sat, Aug 03, 2013 at 11:14:08AM -0700, Kirk Terrell wrote:
>> On 08/03/2013 09:43 AM, Szabolcs Nagy wrote:
>>> * Kirk Terrell <knjterrell@...luelight.com> [2013-08-03 09:19:22 -0700]:
>>>> I've been working on a distro that is a fork from the CLFS Embedded
>>>> project that uses musl libc in place of libc. I've managed to boot
>>>> an emulated Vexpress-a9 target using the instructions at
>>>> http://kanj.github.io/elfs/book/armMusl/index.html.
>>>>
>>> is the --host really the CLFS_TARGET? should it be renamed in the configure script?
>>>
>>> CROSS_COMPILE=${CLFS_TARGET}-  ./configure --prefix=${CLFS} --disable-gcc-wrapper \
>>>      --host=${CLFS_TARGET} --build=${CLFS_HOST} --syslibdir=${CLFS}/lib --includedir=${CLFS}/usr/include
>> According to ./configure --help
>> System types:
>>    --target=TARGET         configure to run on target TARGET [detected]
>>    --host=HOST             same as --target
>>
>> I think --host is legitimate but is confusing. I should look into
>> changing this.
> Yes, it's confusing. GCC has "build", "host", and "target":
>
> - Build: the system you're compiling GCC on.
> - Host: the system you're compiling GCC to run on.
> - Target: the system you're compiling GCC to generate code for.
>
> So if you're cross-compiling a native compiler for $CLFS_TARGET, both
> host and target should be $CLFS_TARGET.
>
> On the other hand, for compiling a cross-compiler that will run on
> your host system but produce code for $CLFS_TARGET, you would use
> $CLFS_HOST for host (this should be the default anyway) and
> $CLFS_TARGET for target.
>
> Confusing enough? :)
>
>>> what needs these header hacks?
>>>
>>> cp ${CLFS}/usr/include/linux/if_slip.h ${CLFS}/usr/include/net/if_slip.h
>>> cp ${CLFS}/usr/include/net/if_arp.h ${CLFS}/usr/include/linux/if_arp.h
>>>
>> I did this because busybox complained about header locations - these
>> are headers from the kernel, not from Musl.  This issue did not
>> present when building a similar system using uClibc.
> I wasn't aware of these issues. Which files are they in? Maybe we
> should look into getting this fixed upstream...
>
> Rich
>
>
The headers were to address the following issues that occurred while 
compiling busybox1.18.4. I'm using GCC-4.6.0 and Musl 0.9.11. I've 
passed the extra cflags -D_GNU_SOURCE -Dfdprintd=dprintf. My target is 
armel-unknown-linux-gnueabi. While compiling busybox I got the following 
errors:

> CC      networking/ifconfig.o
> networking/ifconfig.c:43:26: fatal error: net/if_slip.h: No such file 
> or directory
> compilation terminated.

After turning off ifconfig I get the following:

> networking/libiproute/ll_types.c:11:26: fatal error: linux/if_arp.h: 
> No such file or directory
> compilation terminated.

Since these headers come from the kernel and not Musl I suspect its a 
busybox issue. Any insight would be appreciated.







____________________________________________________________
Fast, Secure, NetZero 4G Mobile Broadband. Try it.
http://www.netzero.net/?refcd=NZINTISP0512T4GOUT2

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.