Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
fimex:install [2011-12-21 09:42:28] heikok [Build] |
fimex:install [2026-02-04 09:41:20] (current) alexanderb |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Installation ====== | ====== Installation ====== | ||
| - | ===== Pre-build Packages ===== | + | Please see the wiki on [[https:// |
| - | If you are lucky to run one of the following operating systems, you can install fimex from a package repository: | ||
| - | |||
| - | ==== Ubuntu 10.04 Lucid ==== | ||
| - | |||
| - | Ubuntu Lucid packages are available since 0.28 at: https:// | ||
| - | |||
| - | ==== Ubuntu 8.04 Hardy ==== | ||
| - | |||
| - | Ubuntu Lucid packages are available up to 0.25 at: https:// | ||
| - | |||
| - | |||
| - | ===== Dependencies ===== | ||
| - | |||
| - | Fimex requires at least the following libraries to be installed for compilation: | ||
| - | * c99/c++ compiler | ||
| - | * [[http:// | ||
| - | * [[http:// | ||
| - | * [[http:// | ||
| - | * [[http:// | ||
| - | |||
| - | To configure the different file formats it requires: | ||
| - | * [[http:// | ||
| - | * Felt (libmi or libfelt (bundled)) | ||
| - | * [[http:// | ||
| - | |||
| - | ===== Build ===== | ||
| - | |||
| - | The installation follows the usual autoconf rules, see ' | ||
| - | extensive information. Since Fimex makes some floating-point calculations | ||
| - | in large loops, it is advisable to switch on SIMD/SSE operations in your | ||
| - | compiler. On a Xeon machine with a x386 machine and gcc, I use the | ||
| - | following flags (those are default for x86-64) (see [[http:// | ||
| - | |||
| - | Since fimex 0.21 | ||
| - | < | ||
| - | CFLAGS=' | ||
| - | make | ||
| - | make check | ||
| - | make install | ||
| - | </ | ||
| - | |||
| - | |||
| - | In case of compilation against the netcdf4 library with hdf5 support, additional libraries needed by a static netcdf4 need to be added manually in LDFLAGS. Those can be retrieved from the nc-config program, e.g. | ||
| - | < | ||
| - | $ / | ||
| - | -L/ | ||
| - | $ export LDFLAGS=' | ||
| - | </ | ||
| - | |||
| - | ==== Optimizations with gcc ==== | ||
| - | |||
| - | The following optimizations have been tried with gcc 4.4 and kd-tree interpolation. | ||
| - | |||
| - | * **-O2** general optimizations like loop-unrolling/ | ||
| - | * **-mfpmath=sse -msse2** on i386 computers, use math from sse-unit. The build-in FPU is not IEEE conform an performs very slowly (> factor 2) when calculating sqrt(nan). This is already the default on i386-64. | ||
| - | * // | ||
| - | * // | ||
| - | * // | ||
| - | |||
| - | ===== Test ===== | ||
| - | |||
| - | * Download the file with testdata: {{: | ||
| - | * Put this file into the test-catalogue | ||
| - | * gunzip the file | ||
| - | * run 'make check' (make check will work even without the testdata and skip a lot of tests) | ||