mirror of
https://github.com/OPM/ResInsight.git
synced 2025-01-08 07:03:25 -06:00
91 lines
3.0 KiB
Plaintext
91 lines
3.0 KiB
Plaintext
Preparations:
|
|
-------------
|
|
|
|
1. Install the CMake build system from www.cmake.org
|
|
|
|
2. Install the MinGW and MSYS packages from www.mingw.org - this a
|
|
collection of gnu tools built for windows. Observe that these tools
|
|
behave like they do on linux, but they are native windows
|
|
applications and the compilers produce native windows binaries, not
|
|
like Cygwin which is based on a portability layer.
|
|
|
|
Make sure to install at least the C and Fortran compilers.
|
|
|
|
3. Install lapack; download and install instructions can be found on
|
|
http://icl.cs.utk.edu/lapack-for-windows/ The text says that you
|
|
will need the Intel Fortran compiler, but the Fortran compiler from
|
|
MinGW works fine. The distribution contains a cmake CMakeLists.txt
|
|
file, and build with Cmake is easy altough time consuming.
|
|
|
|
To make sure the system can find your libraries you should update
|
|
the windows PATH variable to include the location of your
|
|
libblas.dll and liblapack.dll files; if you fail to do this CMake
|
|
will fail to generate a valid set of makefiles for building libutil
|
|
and libecl.
|
|
|
|
|
|
Building libecl / libutil
|
|
-------------------------
|
|
|
|
1. Go to the root directory of the ert distribution and create a
|
|
directory to hold the files created by the build -
|
|
e.g. 'tmp-build'.
|
|
|
|
2. Open the cmake gui and give the path to the source (i.e. the root
|
|
of the ert distribution) and the path to the build directory.
|
|
|
|
3. Press the [Configure] button and select the "MSys Makefiles"
|
|
option. Cmake will inspect your system and set build configuration
|
|
variables accordingly. Cmake will fail with a beep and large red
|
|
warnings. Scroll down to the variables:
|
|
|
|
USE_LSF
|
|
USE_PTHREAD
|
|
USE_ZLIB
|
|
|
|
and uncheck them. In addition you might want to modify some other
|
|
variables? Press the [Configure] button again, and then finally the
|
|
[Generate] button to create makefiles.
|
|
|
|
4. Start up the MSys shell, go to the build directory,
|
|
e.g. 'tmp-build', and type:
|
|
|
|
make ; make install
|
|
|
|
:-)
|
|
|
|
|
|
Using from VisualStudio
|
|
-----------------------
|
|
The ERT code itself can unfortunately not be compiled with the
|
|
VisualStudio C++ compiler, however you can link against the ert
|
|
libraries. In that case you will need the dummy header file
|
|
VisualStudio/stdbool.h
|
|
|
|
|
|
|
|
About the portabaility and features
|
|
-----------------------------------
|
|
|
|
The libecl library is virtually unmodified for compiling on windows,
|
|
but the libutil library (in particular the util.c file) has quite many
|
|
|
|
#ifdef HAVE_FEATUREXX
|
|
|
|
#endif
|
|
|
|
codeblocks. The symbols HAVE_FEATUREXX are defined during the CMake
|
|
configure process. The system inspection is linux centric in the sense
|
|
that the features it is checked for are mostly present/defined on
|
|
linux. If FEATUREXX is not present it is sometimes completely ignore,
|
|
e.g. pthreads, or a windows alternative is compiled in. In the case of
|
|
windows alternative it is just assumed that the feature in question is
|
|
present on the other (i.e. Windows) platform.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|