ZXing C++ Port
This is a manual port of ZXing to C++. It has been tested on Linux, Mac OS X and Windows.
Building using SCons
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-local) is included. To use the included copy,
python scons/scons.py in the instructions below.
To build the library only:
- Install libiconv (optional; included in many operating systems)
To build the command line utility utility:
build/zxingfor a command line reference
To build the unit tests (optional):
- Install CppUnit (
scons -c all
Building using CMake
CMake 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.txtas new project
- Specify command line arguments (see below) and press Finish
Usage with Makefiles, Visual Studio, etc. (see
cmake --help for a complete list of generators):
- Unix: run
cmake -G "Unix Makefiles" ..
- Windows: run
cmake -G "Visual Studio 10" ..
You can switch between build modes by specifying:
To profile the code (very useful to optimize the code):
- Install Valgrind
valgrind --tool=callgrind build/zxing - path/to/test/data/*.jpg > report.html
- Analyze output using KCachegrind
To run the black box tests and check for changes:
zxing-img, e.g., scons zxing
- Run the tests:
bash blackboxtest.sh 2>&1 | tee bb.results
- Diff them with the known results:
diff bb.results blackboxtest.results