C/C++ User's Journal STLSoft - ... Robust, Lightweight, Cross-platform, Template Software ... ATLSTL - where the Standard Template Library meets the Active Template Library COMSTL - where the Standard Template Library meets the Component Object Model
Synesis Software InetSTL - where the Standard Template Library meets the Internet UNIXSTL - Template Software for the UNIX Operating System WinSTL - where the Standard Template Library meets the Win32 API

Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

recls - Libraries Documentation

Version 1.6.1


This is the documentation for the recls library. (Click here for release history.)

recls (http://recls.org/) is a C library (implemented in C & C++) that provides recursive file-system 1 searching. It is described in my "Positive Integration" column, in C/C++ User's Journal (CUJ).

The purpose of the library is twofold. As well as providing an educational experience for the readers (and the author!) of the CUJ column, it is also intended to be a production-quality library, and it is my hope that it will find use throughout the development community. The license is very open, and allows use in any commercial or non-commercial organisation, without requiring provision of source, or runtime acknowledgements.

Language Mappings

In addition to the recls C API, the recls library includes the following language mappings:

Several other mappings will be provided, as the library evolves through the column:


At the moment, the libraries are provided in source (+ project) form only; there are no binaries. This means that you are required to build the libraries yourself. Since the project is primarily educational, this shouldn't present an issue (I hope).

Building the libraries requires that you have version 1.6.5 or later of the STLSoft libraries, and that you've defined the enviroment variable STLSOFT_INCLUDE to refer to the STLSoft directory.

Once other language mappings, that rely on dynamic libraries (such as the .NET ones), then it is possible that binary versions will be made available.


At the current time, the supported compilers are:

Note that for version 1.0.1, makefiles are provided for Borland C++, CodeWarrior, Digital Mars, GCC and Visual C++ only.


Many thanks are due to Chuck Allison, Joe Casad & Jon Erickson, and C/C++ User's Journal & CMP publishing, without whose faith in my ability to steward the "Positive Integration" column, the recls project wouldn't exist.

Thanks are also due to the following, who've lent support in one way or another:

Best regards, and good coding

Matthew Wilson

   Author, "Imperfect C++", Addison-Wesley, 2004    (http://www.imperfectcplusplus.com)
   Contributing editor, C/C++ Users Journal    (http://www.synesis.com.au/articles.html#columns)
   recls implementor    admin hat stlsoft dot org
   Director, Synesis Software    (http://www.synesis.com.au)
   STLSoft moderator and C++ monomaniac    (http://www.stlsoft.org/)

recls Library documentation Synesis Software Pty Ltd, 2001-2005