GithubHelp home page GithubHelp logo

vmvd / zxing-cpp Goto Github PK

View Code? Open in Web Editor NEW

This project forked from glassechidna/zxing-cpp

0.0 1.0 0.0 492 KB

ZXing C++ Library

License: Apache License 2.0

CMake 0.46% C++ 94.44% Makefile 0.16% C 4.94%

zxing-cpp's Introduction

ZXing C++ Port

Build Status

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 last ZXing commit to contain the C++ project, with the following exceptions

  • scons (Python) build system has been deleted.
  • Deleted black box tests, because they refer to a large test data in ZXing repo.
  • Added appropriate copyright/licensing details (based on those in the ZXing repo).
  • Updated README.md

Removal of build systems was done to minimise maintenance burden.

If tests and XCode projects (other than those produced automatically be CMake) are desired, then another repo should be created and this repo referenced as a submodule.

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 CLion or Qt Creator:

  1. Simply open CMakeLists.txt as a new project
  2. Additional command line arguments can be specified (see below)

Usage with Makefiles, Visual Studio, etc. (see cmake --help for a complete list of generators):

  1. mkdir build
  2. cd to build
  3. Unix: run cmake -G "Unix Makefiles" ..
  4. Windows: run cmake -G "Visual Studio 10" ..

You can switch between build modes by specifying:

  • -DCMAKE_BUILD_TYPE=Debug or
  • -DCMAKE_BUILD_TYPE=Release

OpenCV integration

When build on a system where opencv is installed the open cv bridge classes and executable will be built too.

Development tips

To profile the code (very useful to optimize the code):

  1. Install Valgrind
  2. Run valgrind --tool=callgrind build/zxing - path/to/test/data/*.jpg > report.html
  3. Analyze output using KCachegrind

zxing-cpp's People

Contributors

benjamin-dobell avatar sebgdev avatar aidansteele avatar sebastiangoebel avatar afrancescon avatar skylook avatar dushibaiyu avatar bentley avatar chakrit avatar kenny1847 avatar guoxiao avatar thekvs avatar mcrapet avatar mojodna avatar tpetazzoni avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.