zxing/cpp
2012-10-16 20:28:43 +00:00
..
core Issue 1326 DM memory leaks 2012-09-26 11:37:30 +00:00
ios.xcodeproj iOS 6 beta xcode tweaks and minor fixes detected by new clang 2012-06-21 20:34:52 +00:00
magick/src Fix a few issues in test raised by the stricter gcc flags. Closes issue 1085. 2011-11-30 00:47:33 +00:00
osx.xcodeproj ahti333's port of aztec and gfpoly + some fixes + Xcode tweaks for recent ECI updates 2012-02-18 02:14:45 +00:00
scons Tweak svn/git ignores 2010-08-20 00:41:26 +00:00
zxing-cpp.xcodeproj Xcode 4.5.1 project updates 2012-10-13 23:39:06 +00:00
.gitignore couple more iOS 6 tweaks: missing build archs and no rotatation in the sample apps 2012-10-16 20:28:43 +00:00
.svnignore C++ port: 2009-12-08 21:16:43 +00:00
.valgrind.supp Port r1623 changes to C++ 2011-10-13 15:21:13 +00:00
.valgrindrc minor C++ build tweaks 2011-10-14 12:34:33 +00:00
astyle-options Many changes to the C++ port. 2009-11-01 17:30:30 +00:00
blackboxtest.results fix incorrectly applied java port in j2239 2012-06-27 16:02:48 +00:00
blackboxtest.sh ahti333's port of aztec and gfpoly + some fixes + Xcode tweaks for recent ECI updates 2012-02-18 02:14:45 +00:00
format Many changes to the C++ port. 2009-11-01 17:30:30 +00:00
ios_Prefix.pch objective c port for iOS and OS X 2011-05-17 02:07:56 +00:00
README update 2012-06-26 17:21:13 +00:00
SConscript Tweaks to C++ build to only explicity link libiconv if it exists; closes issue 1117 2012-01-12 23:30:18 +00:00
SConstruct Many changes to the C++ port. 2009-11-01 17:30:30 +00:00

This is only tested on Linux. With some trouble, it might work on Windows as well.

The build process uses scons, a build tool written in python. You'll
need to have python installed, but scons installation is optional: a
runtime copy of scons (called scons-local) is included with zxing. To
use the included copy of scons-local, where the instructons says enter
"scons", enter "python scons/scons.py" instead. For example, to build
the library only, you'd use "python scons/scons.py lib" instead of
"scons lib".

To build the library only:
- Run "scons lib" in this folder (cpp)

To build the unit tests:
- Install cppunit (libcppunit-dev on Ubuntu)
- Run "scons tests"
- Run "testrunner" in the build folder

To build the test utility:
- Install Magick++ (libmagick++-dev on Ubuntu)
- Run "scons zxing"

An simple example application is now also included, but no compilation instructions yet.

To clean:
- Run "scons -c all"

To use the test utility:
- Basic usage:
  - "mkdir testout"
  - "zxing testout *.jpg > report.html"
- With the zxing test data, from the cpp folder:
  - "mkdir testout"
  - "build/zxing testout ../core/test/data/blackbox/qrcode-*/* > report.html"

To format the code:
 - Install astyle
 - Run ./format

To profile the code (very useful to optimize the code):
 - Install valgrind
 - "valgrind --tool=callgrind build/zxing - path/to/test/data/*.jpg > report.html"
 - kcachegrind is a very nice tool to analize the output

To run the blackbox tests and check for changes:
 - build the test util, 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