Update INSTALL, README and THANKS file

This commit is contained in:
Antonin Descampe 2016-07-05 16:04:29 +02:00
parent 2372cb78a0
commit f4a708ba0f
4 changed files with 68 additions and 57 deletions

View File

View File

@ -1,69 +1,75 @@
How to build and install openjpeg binaries # OpenJPEG installation
==========================================
UNIX/LINUX/MacOSX/Windows systems The build method maintained by OpenJPEG is [CMake](https://cmake.org/).
--------------------------
Using cmake (see www.cmake.org) ## UNIX/LINUX - MacOS (terminal) - WINDOWS (cygwin, MinGW)
Type: To build the library, type in root openjpeg directory:
cmake . ```
mkdir build
cd build
cmake ..
make make
```
Binaries are then located in the 'bin' directory.
If you are root: To install the library, type with root privileges:
```
make install make install
make clean
```
else if you have sudo power: To build the html documentation, you need doxygen to be installed on your system.
sudo make install It will create an "html" directory in TOP\_LEVEL/build/doc)
```
else
DESTDIR=$HOME/local make install
To build the Doxygen documentation (Doxygen needs to be found on the system):
(A 'html' directory is generated in the 'doc' directory)
make doc make doc
```
Binaries are located in the 'bin' directory.
Main available cmake flags: Main available cmake flags:
* To specify the install path: '-DCMAKE_INSTALL_PREFIX=/path', or use DESTDIR env variable (see above) * To specify the install path: '-DCMAKE\_INSTALL\_PREFIX=/path'
* To build the shared libraries and links the executables against it: '-DBUILD_SHARED_LIBS:bool=on' (default: 'ON') * To build the shared libraries and links the executables against it: '-DBUILD\_SHARED\_LIBS:bool=on' (default: 'ON')
Note: when using this option, static libraries are not built and executables are dynamically linked. > Note: when using this option, static libraries are not built and executables are dynamically linked.
* To build the CODEC executables: '-DBUILD_CODEC:bool=on' (default: 'ON') * To build the CODEC executables: '-DBUILD\_CODEC:bool=on' (default: 'ON')
* To build the documentation: '-DBUILD_DOC:bool=on' (default: 'OFF') * [OBSOLETE] To build the MJ2 executables: '-DBUILD\_MJ2:bool=on' (default: 'OFF')
* To build the MJ2 executables: '-DBUILD_MJ2:bool=on' (default: 'OFF') * [OBSOLETE] To build the JPWL executables and JPWL library: '-DBUILD\_JPWL:bool=on' (default: 'OFF')
* To build the JPWL executables and JPWL library: '-DBUILD_JPWL:bool=on' (default: 'OFF') * [OBSOLETE] To build the JPIP client (java compiler recommended) library and executables: '-DBUILD\_JPIP:bool=on' (default: 'OFF')
* To build the JPIP library and utilities: '-DBUILD_JPIP:bool=on' (default: 'OFF') * [OBSOLETE] To build the JPIP server (need fcgi) library and executables: '-DBUILD\_JPIP\_SERVER:bool=on' (default: 'OFF')
** To build the JPIP server: '-DBUILD_JPIP_SERVER:bool=on' (default: 'OFF')
* To build the JP3D library and utilities: '-DBUILD_JP3D:bool=on' (default: 'OFF') (experimental)
* To build the Java binding: '-DBUILD_JAVA:bool=on' (default: 'OFF') (experimental).
** to choose which java implementation, you can set your JAVA_HOME env var.
* To build the wxWidgets/C++ viewer: 'BUILD_VIEWER:BOOL=ON' (default OFF) (experimental)
* To enable testing (and automatic result upload to http://my.cdash.org/index.php?project=OPENJPEG): * To enable testing (and automatic result upload to http://my.cdash.org/index.php?project=OPENJPEG):
cmake . -DBUILD_TESTING:BOOL=ON -DOPJ_DATA_ROOT:PATH='path/to/the/data/directory' ```
cmake . -DBUILD_TESTING:BOOL=ON -DOPJ_DATA_ROOT:PATH='path/to/the/data/directory' -DBUILDNAME:STRING='name_of_the_build'
make make
make Experimental make Experimental
Note : JPEG2000 test files are available with 'git clone https://github.com/uclouvain/openjpeg-data.git'. ```
If '-DOPJ_DATA_ROOT:PATH' option is omitted, test files will be automatically searched in '${CMAKE_SOURCE_DIR}/../data', Note : test data is available on the following github repo: https://github.com/uclouvain/openjpeg-data
corresponding to the location of the data directory when compiling from the trunk (and assuming the data directory has
been checked out of course).
MACOSX If '-DOPJ\_DATA\_ROOT:PATH' option is omitted, test files will be automatically searched in '${CMAKE\_SOURCE\_DIR}/../data'.
------
The same building procedures as above work for MACOSX. Note 2 : to execute the encoding test suite, kakadu binaries are needed to decode encoded image and compare it to the baseline. Kakadu binaries are freely available for non-commercial purposes at http://www.kakadusoftware.com. kdu\_expand will need to be in your PATH for cmake to find it.
The xcode project file can also be used.
If it does not work, try adding the following flag to the cmake command : Note 3 : OpenJPEG encoder and decoder (not the library itself !) depends on several libraries: png, tiff, lcms, z. If these libraries are not found on the system, they are automatically built from the versions available in the source tree. You can force the use of these embedded version with BUILD\_THIRDPARTY:BOOL=ON. On a Debian-like system you can also simply install these libraries with:
'-DCMAKE_OSX_ARCHITECTURES:STRING=i386' ```
sudo apt-get install liblcms2-dev libtiff-dev libpng-dev libz-dev
```
WINDOWS Note 4 : On MacOS, if it does not work, try adding the following flag to the cmake command :
------- ```
-DCMAKE_OSX_ARCHITECTURES:STRING=i386
```
You can use cmake to generate project files for the IDE you are using (VS2010, NMake, etc). ## MacOS (XCode) - WINDOWS (VisualStudio, etc)
You can use cmake to generate the project files for the IDE you are using (VC2010, XCode, etc).
Type 'cmake --help' for available generators on your platform. Type 'cmake --help' for available generators on your platform.
Make sure to build the third party libs (png, zlib ...): # Using OpenJPEG
'-DBUILD_THIRDPARTY:BOOL=ON' To use openjpeg exported cmake file, simply create your application doing:
```
$ cat CMakeLists.txt
find_package(OpenJPEG REQUIRED)
include_directories(${OPENJPEG_INCLUDE_DIRS})
add_executable(myapp myapp.c)
target_link_libraries(myapp ${OPENJPEG_LIBRARIES})
```

View File

@ -52,12 +52,14 @@ The library is developed and maintained by the Image and Signal Processing Group
See [LICENSE][link-license] for license and copyright information. See [LICENSE][link-license] for license and copyright information.
See [INSTALL](https://github.com/uclouvain/openjpeg/blob/master/INSTALL) for installation procedures. See [INSTALL](https://github.com/uclouvain/openjpeg/blob/master/INSTALL.md) for installation procedures.
See [NEWS](https://github.com/uclouvain/openjpeg/blob/master/NEWS) for user visible changes in successive releases. See [NEWS](https://github.com/uclouvain/openjpeg/blob/master/NEWS.md) for user visible changes in successive releases.
## API/ABI ## API/ABI
An API/ABI timeline is automatically updated [here][link-api-timeline].
OpenJPEG strives to provide a stable API/ABI for your applications. As such it OpenJPEG strives to provide a stable API/ABI for your applications. As such it
only exposes a limited subset of its functions. It uses a mechanism of only exposes a limited subset of its functions. It uses a mechanism of
exporting/hiding functions. If you are unsure which functions you can use in exporting/hiding functions. If you are unsure which functions you can use in
@ -77,3 +79,4 @@ API available is the one supported by OpenJPEG.
[link-msvc-build]: https://ci.appveyor.com/project/detonin/openjpeg/branch/master "Windows Build Status" [link-msvc-build]: https://ci.appveyor.com/project/detonin/openjpeg/branch/master "Windows Build Status"
[badge-coverity]: https://scan.coverity.com/projects/6383/badge.svg "Coverity Scan Build Status" [badge-coverity]: https://scan.coverity.com/projects/6383/badge.svg "Coverity Scan Build Status"
[link-coverity]: https://scan.coverity.com/projects/uclouvain-openjpeg "Coverity Scan Build Status" [link-coverity]: https://scan.coverity.com/projects/uclouvain-openjpeg "Coverity Scan Build Status"
[link-api-timeline]: http://www.openjpeg.org/abi-check/timeline/openjpeg "OpenJPEG API/ABI timeline"

View File

@ -1,4 +1,4 @@
OpenJPEG THANKS file # OpenJPEG THANKS file
Many people have contributed to OpenJPEG by reporting problems, suggesting various improvements, Many people have contributed to OpenJPEG by reporting problems, suggesting various improvements,
or submitting actual code. Here is a list of these people. Help me keep or submitting actual code. Here is a list of these people. Help me keep
@ -24,10 +24,12 @@ Hans Johnson
Callum Lerwick Callum Lerwick
Sebastien Lugan Sebastien Lugan
Benoit Macq Benoit Macq
Arnaud Maye Mathieu Malaterre
Julien Malik Julien Malik
Arnaud Maye
Vincent Nicolas Vincent Nicolas
Glenn Pearson Glenn Pearson
Even Rouault
Dzonatas Sol Dzonatas Sol
Winfried Szukalski Winfried Szukalski
Vincent Torri Vincent Torri