The ubiqx library is a set of utility modules written in C using an object-oriented style. These modules include Splay and AVL trees, Sparse Arrays, a simple caching system, and the obligatory linked lists. The code has lots of comments, and some documentation is included, as well as a few examples. Compiles on Linux, *BSD, AmigaOS, and lots of others.
UCommon is a lightweight C++ library to facilitate using C++ design patterns even for very deeply embedded applications, such as for systems using uClibc along with POSIX threading support. For this reason, UCommon disables language features that consume memory or introduce runtime overhead. UCommon introduces some design patterns from Objective-C, such as reference counted objects, memory pools, and smart pointers. UCommon introduces some new concepts for handling of thread locking and synchronization.
uk.co.vmind.print is a Java printing architecture that is based on pages, unlike others that are often based on things such as datasets. You create a job, create pages, add to the job, create things (boxes, images, text, etc) add to pages, set whether to print/preview, and tell it to go.
ulxmlrpcpp is a library to perform calls via XML-RPC in an object oriented approach. It is possible to create both client and server applications in multithreaded environments. Unlike other implementations, it does not insist on HTTP for transportation, but might also accept other ways (e.g. a simple serial line with a user-defined protocol). For HTTP as a transportation protocol, the following features are supported: cookies, SSL/TLS, proxy, SSL/TLS over a proxy, and chunked transfers. ulxmlrpcpp is also able to transmit data faster with binary XML.
The unixODBC project provides Unix applications with the same ODBC 3.51 API and facilities available under Windows. It provides a Driver Manager that supports the full ODBC API and performs the ODBC 3 to ODBC 2 translations with UNICODE to ANSI conversion. It also includes a set of graphical utilities that allow users to specify connections to DBMSes to be used by applications, a collection of ODBC drivers including a simple text based driver, an NNTP driver, a Postgres driver and others, and a selection of templates and libraries that to aid in the construction of ODBC drivers. It works with MySQL, Postgres, StarOffice/OpenOffice, Applixware, iHTML, PHP, Perl DBD::ODBC, and many other applications and drivers. Connection pooling is also provided to increase performance with applications such as PHP.
usb-mount provides desktop integration for systems using the hotplug scripts and the KDE desktop. It automatically mounts and unmounts USB storage partitions and modifies the user's desktop, via the addition of icons representing USB storage device partitions. The user can interact with the storage device by opening the desktop icons to reveal the folders corresponding to each partition. Each partition's mount status can be altered by using icon control options.
usb4java is a Java library for accessing USB devices. It is based on the native libusb 1.0 library and uses Java NIO buffers for data exchange between libusb and Java. It also supports the javax-usb standard (JSR-80) through the usb4java-javax extension. Supported platforms are Linux (x86 32/64-bit, ARM 32-bit), OS X (x86 32/64-bit), and Windows (x86 32/64-bit). Other platforms may work as well (as long as they have at least Java 6 and are supported by libusb) by compiling the JNI library manually.