The BeagleBone programming with the C and Linux APIs
Almost all Linux programs written in C for a desktop or laptop can be made to work on the BeagleBone if it uses only the Linux API. While this is a qualified statement, many programs will fall into this category. The gating factor is the presence of hardware. For example, a program that requires a keyboard will not work unless a keyboard is installed.
Tip
This section is applicable to other programming languages such as C++.
The things that are likely to break when moving from the desktop to the BeagleBone are as follows:
Software that accesses hardware using the low-level APIs rather than the higher-level abstractions layers; for example, an older desktop system may offer a parallel port that some applications will try to use as GPIOs. While the parallel port access is a standard Linux API, there is no equivalent parallel port on the BeagleBone.
Note
Most software written to use the parallel port in this fashion can often be rewritten to use...