Thread: DIY - KeK
View Single Post
Old 07-24-2012, 04:13 AM   #120
knc1
Going Viral
knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.
 
knc1's Avatar
 
Posts: 17,212
Karma: 18210809
Join Date: Feb 2012
Location: Central Texas
Device: No K1, PW2, KV, KOA
Quote:
Originally Posted by twobob View Post
So. I know I´m a bit slow, but did we say that buildroot did NOT support the processor type? I´m just checking.

Working my way back through this thread bit by bit now.

Good stuff in here
I saw more updates go in for the i.MX2* series this past week but haven't seen any for the i.MX3* or i.MX5* series of freescale chips.

Disclaimer: I may have missed the updates, I don't always read every Buildroot commit message.

- - - -

Buildroot (and the like) are systems that use cross-compilation.

The KeK project is focused on providing an emulated native compilation environment.

Out of the box (actually, out of Rob's ./build.sh script) the emulated native environment (Aboriginal Linux) works, provided:
Your code can be compiled with a gcc-4.2 tool-chain.

For native (compiled) code applications that run on the Kindle(s) the out-of-the-box emulated native environment can only produce "statically linked" Kindle executables.

This long thread is my complaining and moaning about the problems of updating that environment to be based on a current tool-chain.

At the moment, the project status is:
End-user downloads and un-archives:
  • Either the 32bit or 64bit qemu-1.1.1 that is posted in this thread;
  • The system-image-armv6l A.L. image;
  • Opens a terminal and in the directory created by un-archiving the A.L. image types: ./dev-environment.sh
That's it. Three steps. Each of the posts in this thread are worked examples of building ARM software in that emulated environment, for execution in the same emulated environment.

The "work-in-progress" (what GM likes to call: Vaporware);
New "system-image-armv6" (no "l") images in three flavors:
  • system-uclibc-armv6 :: The current image with newer tool-chain.
  • system-glibc-armv6 :: The newer tool-chain for the glibc based Kindle native applications.
  • system-eglibc-armv6 :: The newer tool-chain for the eglibc based Kindle native applications.
For the ARMv7 Kindles, (K4, K5) with the newer VFPv3 co-processor :
That is a single item edit in the ./run-environment.sh script (now or later).
But if the end-user's code doesn't need the better floating point vector processor - then all Kindles can run the ARMv6 code.


When completed, this will add one more step to the first 3 step process:

"pick the correct one of the three directories before typing: ./dev-environment.sh"


This is the simplest DIY-KeK environment I can think of for the person with just one or a few small native code Kindle applications to compile.
  • Download and un-pack two archives
  • Make one decision (which directory of the three)
  • Type one shell script command.

PS: Not (yet) Kindle specfic - all of the above can be used to develop for the Raspberry Pi.

PPS: For the reader that just stumbled into this thread, see:
https://wiki.mobileread.com/wiki/Tools_Index#Development

Last edited by knc1; 07-24-2012 at 05:21 AM.
knc1 is offline   Reply With Quote