Fork me on GitHub


Text files are nowadays usually encoded in Unicode, and may consist of very different scripts - from Latin letters to Chinese Hanzi, with many kinds of special characters: accents, right-to-left writing marks, hyphens, Roman numbers, and much more. But the POSIX platform APIs for text do not contain adequate functions for dealing with particular properties of many Unicode characters. In fact, the POSIX APIs for text have several assumptions at their base which don’t hold for Unicode text.

This library provides functions for manipulating Unicode strings and for manipulating C strings according to the Unicode standard.


To make the library available, run the following:

module load libs/libunistring/0.9.7/gcc-4.9.4

This correctly populates the environment variables LD_LIBRARY_PATH, LIBRARY_PATH and CPATH.

Installation Notes

This section is primarily for administrators of the system.

Version 0.9.7

This build was installed as a dependency of boost_sharc (build using the same C++ standard library); Boost in turn was installed as a dependency of Caffe.

  1. Download, configure, build, test and install using this script

  2. Check the console output of the install process to check that no tests have errored/failed: TOTAL: 499 / PASS: 489 / SKIP: 10

  3. Install this modulefile as /usr/local//modulefiles/libs/libunistring/0.9.7/gcc-4.9.4