This is a manual port of ZXing to C++. It has been tested on Linux, Mac OS X and Windows.
SCons is a build tool written in Python. You'll need to have Python installed, but scons installation is optional: a run time copy of SCons (called scons-local) is included. To use the included copy, replace scons with python scons/scons.py in the instructions below.
To build the library only:
cd to the cpp folderscons libTo build the command line utility utility:
scons zxingbuild/zxing for a command line referenceTo build the unit tests (optional):
libcppunit-dev on Ubuntu)scons testsbuild/testrunnerTo clean:
scons -c allCMake is a tool, that generates native makefiles and workspaces. It integrates well with a number of IDEs including Qt Creator and Visual Studio.
Usage with Qt Creator:
CMakeLists.txt as new projectUsage with Makefiles, Visual Studio, etc. (see cmake --help for a complete list of generators):
cd to cpp/buildcmake -G "Unix Makefiles" ..cmake -G "Visual Studio 10" ..You can switch between build modes by specifying:
-DCMAKE_BUILD_TYPE=Debug or-DCMAKE_BUILD_TYPE=ReleaseTo profile the code (very useful to optimize the code):
valgrind --tool=callgrind build/zxing - path/to/test/data/*.jpg > report.htmlTo run the black box tests and check for changes:
zxing-img, e.g., scons zxingbash blackboxtest.sh 2>&1 | tee bb.resultsdiff bb.results blackboxtest.results