Hi Adam,
Do you have any clues as to why I only get garbage printed out when I try to run one of the bootstrap programs?
I thought it might be because I need to use the generic-hosted.ld linker script packaged with arm-none-eabi, but since you said you think everything should work with arm-none-linux-gnueabi, I'm questioning my conclusion now. (I haven't gotten around to testing a build with arm-none-eabi and generic-hosted.ld yet.)
Thanks,
--
Wesley Miaw
wesley(a)wesman.net
On Sep 12, 2011, at 3:00 AM, l4-hackers-request(a)os.inf.tu-dresden.de wrote:
>
> On Sun Sep 11, 2011 at 10:48:57 -0700, Wesley Miaw wrote:
>> On Sep 11, 2011, at 3:00 AM, l4-hackers-request(a)os.inf.tu-dresden.de wrote:
>>>
>>> On Sat Sep 10, 2011 at 12:26:05 -0700, Wesley Miaw wrote:
>>>> I'm not getting any errors printed out on the console when I run the
>>>> ELF or RAW bootstrap binaries. It just prints out a line of garbage
>>>> (e.g. ? or other random characters). Then I have to hit the reset
>>>> button. This is
>>>
>>> You were mentioning a 'too many headers error' when compiling/linking
>>> with arm-none-linux-gnueabi which you seemed to not get with
>>> arm-none-eabi. I would like to understand what makes the difference in
>>> your setup and then see further.
>>
>> Ah, I see. I don't know why I got that error originally when compiling
>> L4, but I am no longer getting that error. Maybe I did something wrong
>> (or remembering things incorrectly)--I see in the bootstrap linker
>> script that it purposefully combines the data and bss sections with a
>> comment that sounds like it is explicitly working around the problem
>> of a regular linker script creating too many headers.
>>
>> If I compile some other program I write myself to ELF, like a single
>> file Hello World, using arm-none-linux-gnueabi then I get the too many
>> headers error when the ARM Boot Manager tries to flash the ELF binary.
>> Switching to arm-none-eabi and using the generic-hosted.ld linker
>> script fixes this problem.
>
> That's also the reason why bootstrap is generated into a single header,
> because there are loaders that can only do one unfortunately, like the
> one on this platform.