@@ -12,15 +12,14 @@ This software can be compiled under GNU/Linux and Windows, and should be under M
Before starting the compilation, please verify that you have all needed tools and the correct versions:
- CMake version 2.8.11 minimum
- A C++ complier
- A C++ compiler (gcc, mingw)
## Source code
If you just cloned this repository, please ensure the detiq-t library submodule is configured and up-to-date, with the commands:
'''
git submodule update --init
'''
You will need to run this command (without `--init`) each time you want to update the submodules to the last revision
git submodule update --init
You will need to run this command (without `--init`) each time you want to update the submodule to the last revision
## Libraries
EIImage is compiled against some dependencies, you have to check all these dependencies have been installed on your environment.
...
...
@@ -35,15 +34,15 @@ You may use the developer packages from your distribution. Module needed are Cor
### RandomLib
Download the RandomLib C++ library from the official website: http://randomlib.sourceforge.net/. Generates compilation environment with CMake and build the library. Default options works well.
RandomLib 1.7, 1.8 and 1.9 are known to work. More recent versions should also be ok.
RandomLib 1.7, 1.8 and 1.9 are known to work. Newer versions should also be ok.
### Qwt
Download Qwt 6.0 or newer from the official website: http://sourceforge.net/projects/qwt/
The library must be compiled against Qt, please ensure you use the same version than the one you will use to compile EIImage. The most easier way to comile Qwt is to load the project file (qwt.pro) in Qt Creator, configure the project, run the compilation.
Compilation and installation are documented on the official website: http://qwt.sourceforge.net/qwtinstall.html. If you don't want to install the library on your system after compilation, don't forget to manually locate the folder where the library has been built (thanks to CMAKE_PREFIX_PATH variable) and the include directory (thanks to QWT_INCLUDE_DIR variable). The right value for include dir variable is the 'src' folder in the Qwt main sources folder.
Compilation and installation are documented on the official website: http://qwt.sourceforge.net/qwtinstall.html.
Note: GNU/Linux users can use the package their manager, but this can be problematic if the library binary has been compiled with an incompatble verion of Qt. In that specific case, the library have to be compiled manually.
Note: GNU/Linux users can install the package provided by their distribution, if it exists, but this can be problematic if the library binary has been compiled with an incompatble verion of Qt. In that specific case, the library have to be compiled manually.
### Zlib, Jpeg, Png
#### Windows
...
...
@@ -51,10 +50,11 @@ You can get these libraries from http://gnuwin32.sourceforge.net/. Download and
Later, you will have to indicate the base path for these libraries (by default C:\Program Files\GnuWin32) using CMAKE_PREFIX_PATH.
Note: If you don't have the right to install packages on your machine, you can download both 'Binaries' and 'Developer files' zip packages for each library. Then, uncompress it to a folder (example: C:\GnuWin32). This will automatically copy libraries into 'bin', 'lib' and 'include' sub-folders.
#### GNU/Linux
Developer packages from your distribution may be available. This is the easiest way to install these dependencies. CMake will probably detect the paths automatically if you install from your package manager.
Developer packages from your distribution may be available. This is the easiest way to install these dependencies. CMake will probably detect dependencies more easily if you install them with the package manager.
## CMake Generation
This is the most important part. Once the generation is done, the compilation shouldn't cause any trouble.
...
...
@@ -64,13 +64,17 @@ CMake is used here to generate a project file for a specific IDE, or a set of Ma
In general, it is a good idea to generate build environment in an empty folder separated from the source folder.
### Windows users
Depending on the compiler you want to use, you may need to run cmake or cmake-gui from a command line terminal with compilation environment variables pre-defined. For example, to help CMake finding MSVC compiler, you may have to run cmake in a 'Visual Studio Command Prompt'. This can be found in the Start menu. Compiling with MinGW can be achieved by running cmake from 'MinGW shell'.
Depending on the compiler you want to use, you may need to run `cmake` or `cmake-gui` from a command line terminal with compilation environment variables pre-defined. For example, to help CMake finding MSVC compiler, you may have to run cmake in a 'Visual Studio Command Prompt'. This can be found in the Start menu. Compiling with MinGW can be achieved by running cmake from 'MinGW shell'.
The CMake scripts shipped with EIImage try to locate automatically all libraries and tools needed to compile it. But in some case, this is impossible because there is no common standard path were all libraries should be installed. To help CMake find needed libraries, you can set some variables when running cmake:
Since there is no standard path to install libraries, you can choose where you want to install them. If needed, set the CMAKE_PREFIX_PATH variable with the path of dependencies (separated with ';')
- CMAKE_PREFIX_PATH will be used by CMake to serach for libraries needed. You can put local paths were some dependencies are stored. Use the separator of your OS (';' for Windows). Example: `-DCMAKE_PREFIX_PATH="C:/Program Files/GnuWin32";D:/libs/RandomLib-1.10-build`
-\<libname\>_DIR can be used to help CMake finding a specific library
-\<libname\>_INCLUDE_DIR can be used to help Cmake finding headers for a specific library
### GNU/Linux users
It should be easier to configure compilation for Linux users, since most of the tools are already available from the $PATH environment variable.
If you had to compile manually a dependency, don't forget to run `make install` after the compilation. This by default install libraries and headers under the `/usr/local` prefix, which is generally already in the $PATH
If you had to compile manually a dependency, don't forget to run `make install` after the compilation. By default, the command installs libraries and headers under the `/usr/local` prefix, which is usually already in the $PATH.
## Compilation
If the previous steps have been done correctly, compilation shouldn't cause any trouble.