<br><br><div class="gmail_quote">On Mon, Oct 17, 2011 at 8:24 AM, Andrew Bradford <span dir="ltr"><<a href="mailto:bradfa@gmail.com">bradfa@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div class="im">On Sun, Oct 16, 2011 at 5:00 PM, Lance Jump <<a href="mailto:lancej29@gmail.com">lancej29@gmail.com</a>> wrote:<br>
>> I may have found something. I put debug printf calls in the ash.c source<br>
>> to see if it was getting that far and what was happening if it did. It does<br>
>> get to ash and it appears to crash after the first call call to setjmp. I<br>
>> removed that call and it got far enough to give me the "~ #" prompt. But as<br>
>> soon as I entered a command, it went back to the "Please press Enter ..."<br>
>> message. I followed it a bit further and found that it was crashing at<br>
>> another setjmp. So, I searched for "Busybox setjmp" and found lots of<br>
>> references to setjmp being broken in ARM uClib. Most were older, but few<br>
>> were more recent. A few made references to floating point configuration.<br>
<br>
</div>Nice debugging work! :)<br>
<div class="im"><br>
> Okay, that was it. I found that UCLIBC_HAS_FP was set in the config file of<br>
> uClibc. I set the CLFS_FLOAT to "soft" and CLFS_FPU to empty, but these did<br>
> not appear to get used. The uClibc configuration comes from the copy of<br>
> clfs/config.arm.little, which has UCLIBC_HAS_FPU=y set. I didn't see<br>
> anything in book about needing to change that.<br>
><br>
> Anyway, I changed it in the uClibc build process with a conditional sed:<br>
><br>
> if [ "${CLFS_FLOAT}" == "soft" ]; then<br>
> sed -i s/"UCLIBC_HAS_FPU=y"/"# UCLIBC_HAS_FPU is not set"/g .config<br>
> fi<br>
><br>
> I rebuilt everything and found that the startup script now runs. I have some<br>
> DHCP startup problems, but that is completely unrelated. Anyway, I can now<br>
> log in.<br>
><br>
> How do you want to handle this issue? Is it a failure on my part to<br>
> properly read the directions or should there have been a note about making<br>
> menuconfig in uClibc? Some other alternatives include having additional<br>
> template config files (w/o FPU), incorporating something like my sed lines<br>
> (above) or maybe having the default config.arm.little have FPU turned off.<br>
<br>
</div>This is a shortcoming of the book. Doesn't look like you deviated<br>
from the book at all.<br>
<br>
If you're interested, can you create a patch for this sed line? It<br>
should probably go just after the ABI change in section 6.11 in the<br>
ARM book. The syntax in the XML that's needed in order to use some of<br>
the "more special" characters for sed lines should be evident to you<br>
from looking at the existing example for changing the ABI, but if not,<br>
let me know.<br></blockquote><div><br>Okay, I can do that. To be clear, the patch will add the instruction about floating point and the sed line I have included here. As a separate item (maybe still on my plate) we should fix the creation of /dev/null and /dev/console. We have three choices: leave it where it is, but change the location ${CLFS}-final; move it to before the clone to ${CLFS}-final; or delete it altogether. In my testing, I found it was needed.<br>
<br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br>
Because of the number of configurations possible for ARM (ABI,<br>
floating point, big/little endian, etc) having different config files<br>
for each is a pain. Changing small things in the uClibc config file<br>
is best done with sed lines after using a default config for those who<br>
want to use the default config. If you're really up for a challenge,<br>
it'd be nice to only have one config file for each architecture for<br>
uClibc (currently there's big and little endian for ARM and MIPS but<br>
I'm not sure we really need that).<br></blockquote><div><br>I'm no longer expert on sed, so writing sed scripts to massage the config file will be a little difficult for me -- but not insurmountable. For now, maybe we should just leave them as-is. (I used to write sed scripts to massage PCB files in DC/CAD and I got to be quite good at it. Sadly, that part of my brain atrophied.)<br>
<br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br>
Nice detective work!<br></blockquote><div><br>Thank you and thanks for your support with this issue. <br> <br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div><div></div><div class="h5">-Andrew<br>
_______________________________________________<br>
Clfs-support mailing list<br>
<a href="mailto:Clfs-support@lists.cross-lfs.org">Clfs-support@lists.cross-lfs.org</a><br>
<a href="http://lists.cross-lfs.org/listinfo.cgi/clfs-support-cross-lfs.org" target="_blank">http://lists.cross-lfs.org/listinfo.cgi/clfs-support-cross-lfs.org</a><br>
</div></div></blockquote></div><br>