LibU is a multiplatform C library that comes under a BSD-style license. It includes many interdependent modules for accomplishing several tasks: memory allocation, networking and URI parsing, string manipulation, debugging, and logging in a very compact way, plus many other miscellaneous tasks. It has a small footprint (about 70KB for the default configuration), it is modular, and it has a multiplatform nature, making it an ideal candidate for embedded systems. KLone is an example of such usage.
vile is a text editor which is extremely compatible with vi. It has extended capabilities in many areas, including multi-file editing and viewing, mouse support, infinite undo, additional operators, and rectangular operations. Vile has an optional Perl interface for UNIX and NT. It can also be built as "xvile", which is fully X-aware, or "winvile" for Win32, with scrollbars, menus, etc.
The PLCIO library reads and writes data to a variety of programmable logic controllers (PLC). Now in its 20th year, PLCIO is a stable platform allowing the programmer to address PLC memory by their tag names for different data types, regardless of the computer architecture, with the PLC linked either directly or remotely. PLCIO abstracts the application and communications layers so that the programmer of the business and database logic need not worry about the communication details. Full source code is included, as are samples and a CGI interface for PLC access from a Web browser. It runs under Linux, HP-UX, Solaris, and QNX, and can be used as a replacement for the aging Interchange software by Allen-Bradley. PLCIO supports the Serial DF1 and Ethernet protocols of the Allen-Bradley PLC-5, SLC 500, ControlLogix, CompactLogix, and MicroLogix PLCs (using the CIP protocol), the Modicon Quantum PLC, the Wago 750-842 PLC, the Siemens Step5 PLC (using the AS511 serial protocol or via Ethernet using the INAT Echolink), and the Siemens Step 7 200, 300, and 400-series CPUs. It also supports communicating directly with an I/O bus terminal such as the Beckhoff BK9105 or the Phoenix Contact FL IL 24 BK ETH/IP-PAC.
MaKL is a simple and light framework for building multi-platform C/C++ projects, purely based on the Bourne Shell and GNU Make. It is much easier to install and use than other typical building systems, while maintaining the essential functionality. It is ideal for embedded systems due to its cross-compilation, multiplatform toolchaining mechanisms, and minimal external dependencies.