ZXing is/was a Java library.
At some point a complete C++ port/rewrite was created and maintained in the official ZXing repo. However, at the time of writing the C++ port is no longer maintained and has been removed from the official ZXing repo.
This project was forked from the zxing-cpp to contain the C++ project, with try to keep zxing-cpp up-to-date with zxing-java version. Current progress:
- Migrated PDF417
- Migrated DataMatrix ... To be continue
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 CLion or Qt Creator:
- Simply open
CMakeLists.txt
as a new project - Additional command line arguments can be specified (see below)
Usage with Makefiles, Visual Studio, etc. (see cmake --help
for a complete list of generators):
mkdir build
cd
tobuild
- Unix: run
cmake -G "Unix Makefiles" ..
- Windows: run
cmake -G "Visual Studio 10" ..
You can switch between build modes by specifying:
-DCMAKE_BUILD_TYPE=Debug
or-DCMAKE_BUILD_TYPE=Release
To profile the code (very useful to optimize the code):
- Install Valgrind
- Run
valgrind --tool=callgrind build/zxing - path/to/test/data/*.jpg > report.html
- Analyze output using KCachegrind