Windows 7 Download and Installation

From KratosWiki
Revision as of 15:38, 30 June 2014 by Roigcarlo (Talk | contribs)
Jump to: navigation, search

Last Edited: 5 August 2013

The idea of this tutorial is to create a working copy of Kratos, capable of running standalone. That is, after installation no external libraries or directories are needed but the one of Kratos. Moreover, this means that the version you compile should run in other machines that have a similiar configuration to yours, even if they don't have the libraries that were required during compilation. To do this you'll end up with copies of the needed libraries inside and embedded Python. If you want to compile a 32 bit version, it is important to be consistent and install everything in 32 bits.

The aim of the following steps is to compile Kratos in your own computer. If you just want to execute it you can download a precompiled working copy from here

Contents

Automatic

Preliminaries

Before compiling any version of Kratos under windows you will need to install Microsoft Visual Studio. We strongly recommend you to use version 2010 or 2012. The 2012 version can be downloaded here:

 http://www.microsoft.com/es-es/download/details.aspx?id=34673

Compiling

There are a couple of automatic compiler/installer both for 32 and 64 bits that will set up all the libraries required by Kratos and perform the compilation process automatically. The process is fully automated and you will only have to specify the install directory and click "next" You can found the installers here:

 For 32 Bits: https://web.cimne.upc.edu/users/croig/data/kratos-3.3.dev-win-32.exe

After using these installers you will have the last version available in the repository compiled.

Notice that these installers will overwrite any previous version of the prerequisite libraries on your machine. The complete list of the libraries installed is the following:

 Python 3.3.3 // Python 3.3.4 ( for 32 and 64 bit versions respectively )
 Svn 1.8.0.1
 CMake 2.8.12 
 ACML 4.4 

Manual

Preliminaries: Components needed to install the Kratos

Note that this is a specific case of possible installation of Kratos in 32 bits under Windows 7, and all the different components are not compulsory for the successful use of Kratos. You can select other equivalent C++ compilers, svn, etc. or other versions of those we are presenting. If you are running a 64 bit machine it will also work. To keep the instalation process easy here is only described the 32 bit installation. It is also possible to do the 64 bit installation, but you will have to compile the Boost library yourself since its Installer is only for the 32 bit version.
Two examples of organization of files are provided. Of course, you should select only one of them.
Make sure that all the libraries that you need are installed in directories that do not have spaces. The classic "/program files" directory might cause problems for ths reason and the error does not give an insight on the problem, so better use spaceless directories.

C++ compiler. Microsoft Visual Studio 2010

For developers using Windows, we recommend to use Microsoft Visual Studio 2010. If you are working with a 64 bits machine, be sure that you include the 64 bits tools in your MSVS installation.

SVN

It is recommended to use RapidSVN
The latest released version: 0.12, October 2009, RapidSVN-0.12.0-8051.exe
Download and run the file:
RapidSVN.1.jpgRapidSVN.2.jpg

Kratos Source Code

By using RapidSVN, the kratos source files can be downloaded by taking the following steps:
  • Go to Repository->Checkout and enter the following path to the kratos repository:
        https://svn.cimne.upc.edu/p/kratos/kratos
RapidSVN.3.jpgRapidSVN.4.jpg
  • Choose a working directory where module: kratos will be created in your pc
    • example A: "C:\Kratos2010"
    • example B: "D:\Kratos2010"
Warning! Avoid using the root directory if you need to commit files to the SVN.
  • "recursive" option have to be signed
  • this will create a folder "C:\Kratos2010\kratos" or "D:\Kratos2010\kratos" with all the required Kratos files.
RapidSVN.5.jpg

Pre and Post Processor. GiD

We use GiD as our favourite pre and post-processor.
Download and install the latest version of GiD. Here we use the latest beta version for 64 bits (GiD9.2.9b-win-x64-Install.exe)
GiDInstall.1.jpgGiDInstall.2.jpg
GiDInstall.3.jpgGiDInstall.4.jpg

Cmake

The compilation of the Kratos is now cmake-based. Cmake can be installed in the system download it from http://www.cmake.org/ . Using the installer is the easiest way.

DO NOT FORGET TO CHECK THE OPTION "Add CMake to the system PATH for all users"

Sometimes spaces in the PATH can cause problems in Windows, so install it simply in, for example: C:\CMake2.8

Still, if you get an error message stating that the path could not be modified, you'll have to add the following enviroment variable:

PATH=C:\CMake2.8\bin

Scripting Language Python.

Python can be downloaded from here. At this moment the python Python 2.7.2 is supported.
After the installation, you should check that Python has created a folder called "C:\Python27\libs" or "D:\Python27\libs".

Boost Library

Kratos uses the Boost library.
Boost provides free peer-reviewed portable C++ source libraries.
Install the boost library
You can install and build manually the boost library or you can directly use an installer. As said in the boost webpage: "The easiest way to get a copy of Boost is to use an installer. The Boost website version of this Getting Started guide will have undated information on installers as they become available, or see Boost downloads or the installer provided by BoostPro Computing. We especially recommend using an installer if you use Microsoft Visual Studio, because the installer can download and install precompiled library binaries, saving you the trouble of building them yourself."
For 32 bits machines. Download and run BoostPro Installer (Version 1.47 has some issues, so it's better install version 1.46.1, unless version 1.48 or newer is available).
  • select Visual C++ 10.0 (Microsoft Visual Studio 2010) and all the variants
BoostInstall.1.jpgBoostInstall.2.jpg
  • select all the components
BoostInstall.3.jpgBoostInstall.4.jpg
  • select "C:\boost_1_46" as Destination Folder. Do not use a folder with spaces such as C:\Program Files since Cmake might have problem with spaces
BoostInstall.9.jpg
BoostInstall.7.jpgBoostInstall.8.jpg
  • check that the following specific folders have been created: \boost_1_46\lib and \boost_1_46\bin
BoostInstall.10.jpgBoostInstall.11.jpg
For 64 bits machines. You need to manually build the library. Take a look to: http://www.boost.org/doc/libs/1_47_0/more/getting_started/windows.html
As an example, for a Windows 7, 64 bits version, with python2.7 installed in D:, the steps are the following:
  • open a command window
  • go to your boost root folder: C:\boost_1_46
  • run bootstrap.bat. This will create the necessary build files
  • modify your project-config.jam file, by adding:
    • using mpi ;
    • using python : 2.7 : D:\\Python27\\python : : : <address-model>64 ;
  • execute: b2 --toolset=msvc-10.0 --build-type=complete architecture=x86 address-model=64 stage --with-python --with-serialization
  • copy the files from the C:\boost_1_46\stage\lib folder to the C:\boost_1_46\lib folder
Take care with the compatibility between boost, the python and MS Visual Studio versions!

Environment variables

Since at the end Kratos will be a standalone application, with all the needed libraries inside its folder, there's no need to set the enviroment varibles


Lapack library for External Solver Application

These libraries are required for the installation of the external solver application, otherwise override this step.

For win32 platform the binaries can be downloaded from:

http://developer.amd.com/amd-license-agreement/?f=acml4.4.0-pgi32.exe

You must download the 32 bit PGI version ( acml4.4.0-pgi32.exe when this page was las modified)

After installation you'll have to edit your configure file so that it points to the directions where the .lib files are, for example by default the files are installed at:

-DBLAS_INCLUDE_DIRS="C:\AMD\acml4.4.0\pgi32\include" ^
-DLAPACK_INCLUDE_DIRS="C:\AMD\acml4.4.0\pgi32\include" ^
-DLAPACK_LIBRARIES="C:\AMD\acml4.4.0\pgi32\libacml_dll.lib" ^
-DBLAS_LIBRARIES="C:\AMD\acml4.4.0\pgi32\lib\libacml_dll.lib" ^

Note that the External Solver application is set in OFF by default in the configure.bat.do_not_touch, so you'll have to add the previous lines in you configure.bat if you want to install it.

Compiling Kratos

Customize configure.bat

  • In the Kratos root folder ("C:\Kratos2010\cmake_build") copy the example_configure.bat.do_not_touch to configure.bat . Check if the path of boost and external library are correct and see if the aplication that you will use to be switch on.


Configure2.png

Running configure.bat

Finally run configure.bat and if all is correct, the file ALL_BUILD.vcxproj will be generated.

It is convenient to run it in the Visual Studio Command Prompt (the 32 bit version) or a console (START->RUN and type "cmd"). This way the console will not close once it has finished configuring and therefore you can check everything is ok.

Cmake1ff.png

Note: Check that the Python and Boost's version are correct together with the path.

Microsoft Visual Studio 2010 Kratos Project

Open the file KratosMultiphysics.sln with Visual Studio 2010 and now we can proceed to compile Kratos. Once inside in Visual Studio 2010, it is neccesary to follow the following steps

a) go to -> View -> Property Manager ->

Note: see bellow picture.

Ffddd.png

b) Click with the right botton over the ALL_BUILD and select PROPERTIES

Note: see bellow picture.

Fffddd.png

c)Finally, select the botton corresponding CONFIGUTARION MANAGER and select INSTALL

Note: see above picture.

Compilation Kratos

MSVS2008 Compile Kratos.1.jpg
  • IMPORTANT: Change the output mode to Release ( by default it is usually in Debug, as pictured above)
  • Select Build - Build Solution (or simply hit F7 in the keyboard

Finally, to complete the creation of standalone copy of the Kratos you'll need to add some dlls that won't be present in most host machines. Moreover, it is also necessary to do this in your PC since some of the libraries you've just installed were not declared in the enviroment variables and therefore your system wouldn't be able to find them by itself. These libraries are the ones belonging to Python, Boost, lapack and blas. By adding the following files you can run krun.exe directly, even if you run Kratos in another machine where you haven't intalled these libraries.

Have in mind that the files provided in the zips below are for the version mentioned in the previous steps, so if you installed newer versions you'll have to look for the files inside the libraries' installation folders.

  • python27.dll
  • python27.zip (containing the folders libs and DLLs from python)
  • blas_win32_MD.dll
  • boost_python-vc100-mt-1_46_1.dll
  • lapack_win32_MD.dll
  • libacml_dll.dll
  • pgc.dll
  • pgftnrtl.dll

Once you've done this, to run you script you can simply go to the directory where your problem is and type in a console:

C:\kratos_install_dir\runkratos.exe my_python_script.py

and your problem should start running.

Running script.png

Personal tools
Categories