Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Lucene++ is an up to date C++ port of the popular Java Lucene library, a high-performance, full-featured text search engine.

branch: master

This branch is 0 commits ahead and 0 commits behind master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 bin
Octocat-spinner-32 build
Octocat-spinner-32 cmake
Octocat-spinner-32 doc
Octocat-spinner-32 doxygen
Octocat-spinner-32 include
Octocat-spinner-32 lib
Octocat-spinner-32 scripts
Octocat-spinner-32 src
Octocat-spinner-32 .gitignore
Octocat-spinner-32 APACHE.license
Octocat-spinner-32 AUTHORS
Octocat-spinner-32 CMakeLists.txt
Octocat-spinner-32 COPYING
Octocat-spinner-32 LGPL.license
Octocat-spinner-32 README.PACKAGE
Octocat-spinner-32 README.rst
Octocat-spinner-32 REQUESTS
Octocat-spinner-32 liblucene++.pc.cmake
Octocat-spinner-32 waf
Octocat-spinner-32 wscript
README.rst

Lucene++

Welcome to lucene++ version 3.0.3.4.

Lucene++ is an up to date C++ port of the popular Java Lucene library, a high-performance, full-featured text search engine.

Components

  • liblucene++ library
  • liblucene_contrib library
  • lucene_tester (unit tester)
  • deletefiles (demo)
  • indexfiles (demo)
  • searchfiles (demo)

Useful Resources

Official Java Lucene - useful links and documentation relevant to Lucene and lucene++. Lucene in Action by Otis Gospodnetic and Erik Hatcher.

Boost unit testing runtime parameters reference http://www.boost.org/doc/libs/1_44_0/libs/test/doc/html/utf/user-guide/runtime-config/reference.html

Build Instructions using CMake

You'll need boost installed somewhere.

On Debian systems, the following packages are required:

  • libboost-date-time-dev
  • libboost-filesystem-dev
  • libboost-regex-dev
  • libboost-thread-dev
  • libboost-iostreams-dev
  • libboost-test-dev

Build Instructions using Waf

Alternatively you can use Waf to drive the build. Waf requires that you have a recent version of Python installed on your system.

To build the library the following commands should be issued:

$ ./waf configure
$ ./waf --static build

Additionally static builds of the following libraries are required for a successful build:

  • boost::date_time
  • boost::filesystem
  • boost::regex
  • boost::thread
  • boost::system
  • boost::unit_test_framework

The libraries and headers should be made available at a standard prefix (/usr/local for example).

Build Instructions for Windows systems

Open solution lucene++.sln located in the msvc folder into Visual Studio 2008 and build.

Note: "BOOST_ROOT" environment variable must be defined to point to the boost library directory (eg. c:\boost_1_44_0)

You'll need boost installed.

BoostPro has some precompiled windows packages. You'll need the following extras installed:

- boost::system
- boost::thread
- boost::filesystem
- boost::regex
- boost::date_time
- boost::iostreams
- boost::unit_test_framework

Building Performance

Use of ccache will speed up build times a lot. I found it easiest to add the /usr/lib/ccache directory to the beginning of your paths. This works for most common compilers.

PATH=/usr/lib/ccache:$PATH

To run unit test suite

lucene_tester is built using the Boost Unit Test Framework and is launched by the following command:

$ bin/lucene_tester --test_dir=./test/testfiles --show_progress=yes

Other command options can be supplied.

Acknowledgements

  • Ben van Klinken and contributors to the CLucene project for inspiring this project.
  • Jamie Kirkpatrick for cross-platform and waf build support.
  • nedmalloc Copyright 2005-2006 Niall Douglas
  • md5 Copyright (C) 1999, 2000, 2002 Aladdin Enterprises
  • Unicode character properties (guniprop) Copyright (C) 1999 Tom Tromey, Copyright (C) 2000 Red Hat, Inc.
Something went wrong with that request. Please try again.