ivl

ivl download

The latest version of ivl is available on GitHub at https://github.com/cpplibivl/ivl.

Previous versions can be found on SourceForge.net.

Before downloading, please read the ivl installation instructions below, providing specific file download options for your platform and guiding you through the required and optional steps for an installation type of your choice.

Once installation is complete, you may go right away to ivl first steps and start using ivl .

ivl installation instructions

Things you need to know prior to installation:

  • CMake is required for any type of installation on any platform. CMake is a cross-platform, open source build system requiring only a C++ compiler.
  • As detailed in what is ivl, ivl consists of the ivl core library and modules ivl-lina, ivl-cv and ivl-qt, requiring libraries LAPACK, OpenCV and Qt, respectively. Installation of the three modules [and required libraries] is optional but highly recommended.
  • Depending on your platform, there are different ivl installation types to choose from, including CMake command-line, CMake GUI, or a stand-alone ivl installer.

Instructions follow for installation on Linux, Microsoft Windows and other platforms.

ivl installation on Linux

  • step 1 - install CMake and preferably CMake-GUI
  • step 2a - install OpenCV development packages [optional]
  • step 2b - install LAPACK development packages [optional]
  • step 2c - install Qt development packages [optional]

    Note: OpenCV, LAPACK and Qt are optional. However, they are highly recommended and required for several of the code examples.

    Installation of the above packages depends on your Linux distribution. An example of steps 1,2a-2c for Debian/Ubuntu is:

    Notice: For the latest Debian/Ubuntu systems you also need:

  • step 3 - download the archive of the ivl source code and extract it (alternatively, clone the source code using git clone) to a temporary directory, e.g. /tmp/ivl/
  • step 4 [option 1] - go to the directory that contains the extracted files, e.g.

    and build everything using cmake:

    or, to skip building the ivl samples, use:

    instead.

  • step 4 [option 2] - run cmake-gui and build using CMake GUI

After installation, you need to create a project to start using ivl. The configuration can be done by writing a CMake project file with packages ivl and optionally ivl-lina, ivl-cv and ivl-qt. As an alternative, you may find the compiler flags for ivl and its modules using pkg-config:

For instance, assuming no modules are used, use the following to compile a single C++ source file named test.cpp into an binary executable named test and run the binary:

ivl installation on Microsoft Windows

Note: The latest ivl is not currently available in binary form for Microsoft Windows. Please, either use the latest available installer, or build ivl from source using MingGW and CMake as shown here. The latest version of ivl is currently not compatible with Visual Studio.

  • step 1 - download and install CMake
  • step 2a - download and install OpenCV [optional]
  • step 2b - download and install CLAPACK using our installer [for CMake autodetection] [optional]

    Note: OpenCV and LAPACK are optional. However, they are highly recommended and required for several of the code examples.

  • step 3 [option 1] - download and run the ivl Windows installer
  • step 3 [option 2] - download the ivl source code and build using CMake GUI

The tested compilers for Microsoft Windows are MinGW GCC version 4.0 and above and Microsoft Visual Studio 2005. For MinGW GCC the suggested installation type is to build from source using CMake.

After installation, you need to create a project to start using ivl. The configuration can be done by writing a CMake project file with packages ivl and optionally ivl-lina, ivl-cv and ivl-qt. As an alternative, you may use the Visual Studio 2005 project files of the ivl samples included in the installer:

  • samples/array_sample for the ivl core library
  • samples/full_ivl_sample for ivl, ivl-lina, ivl-cv and ivl-qt

ivl installation on other platforms

To build ivl on any other platform, use the following guide to build using CMake GUI.

To install the optional modules ivl-lina, ivl-cv and ivl-qt, libraries LAPACK, OpenCV and Qt need to be installed accordingly. To find out supported platforms and downloads for these libraries please follow the instructions on their websites.

Although not tested elsewhere, ivl should install and run on any system with a standard C++98 compiler and CMake.

building ivl with CMake GUI

Once the source code of ivl has been extracted to a temporary directory, it can be built easily on any platform using CMake. You need to provide the source directory, which is where ivl is extracted, and the target directory, which could be a subdirectory of the first, e.g. ./build. Click on 'Generate' and CMake will prompt you to create the subdirectory, as shown below:


You are then prompted to select the compiler to be used, as shown:


After choosing the compiler, click on 'Finish', which brings you to the following:


At this point you may configure how to build ivl. For instance:

  • You may choose the target ivl directory by setting 'CMAKE_INSTALL_PREFIX'.
  • You may choose the build type [e.g. Release/Debug] by setting 'CMAKE_BUILD_TYPE'.
  • You may enable or disable ivl-lina, ivl-cv and ivl-qt by enabling/disabling 'USE_LAPACK', 'USE_OPENCV' and 'USE_QT'.
  • You may choose to build the samples or not with 'BUILD_SAMPLES'; install them or not with 'INSTALL_SAMPLES'; and automatically download the sample data or not [a few images] with 'DOWNLOAD_SAMPLE_DATA'.
  • In case you need LAPACK and/or OpenCV but CMake was unable to autodetect their path, you may manually provide it with options 'clapack_DIR' and 'OpenCV_DIR', respectively.
  • In case you don't need Qt but there is an error in the CMake process, caused by Qt, you may disable 'SEARCH_FOR_QT' and reconfigure.

When you are ready, click on 'Configure', and then 'Generate' again. Project files [or Makefiles] for the chosen compiler are generated in the 'build' subdirectory.

Finally, open those files and build ivl from within your chosen development environment.