Go to RMC++_home

 The usage of the new Makefile

 

A new Makefile for Linux was written for RMC++_new and RMC++_multi to make the usage of the different option switches easier. Originally the option switches had to be switched ON or OFF in the altern.h file. Switching an option OFF had to be done by commenting it out from the code. Separate makefiles existed for using or not using the ATLAS option, as for ATLAS new libraries and include files are needed. The old type Makefile and Make_atlas can still be used as well.

 

Now the same Makefile can be used for the compilation and linking of both RMC++_new and RMC++_multi programs, but for RMC++_multi the MULTI=0 command line option always has to be specified! The user does not have to edit the altern.h file, but it is a requirement, that all the option switches (including the LAST_GEN) has to be switched OFF in that file. The source is always provided this way. The generated code depends on the command line options passed to make. To avoid mixing up the executables created with different set of option switches, the executable name will contain indication, what switches are turned ON for the given compilation.

The following table will contain the command line options and the indicators in the file name for the different option switches.

 

Command line option for make

Indicators in the executable name

Option switch

AT=0

_atlas

_ATLAS is ON

SUMP=0

_sp

_SUM_PPCF is ON

TEST=X

_t

_TEST_MODE is ON, X is the number of generated steps to do

OLDOUT=0

_oo

_OLDFORMAT_OUT is ON

MULQ=0

_mq

_Q_SWITCH_SQ_FQ is ON

MAC=0

_mac

_CODE_WARRIOR_MAC is ON

OH=0

_oh

_OLD_HEADER (only needed if the computer has the old style C++ header files)

NEI=0

_nei

_NEI option is on, neighbour list is saved into the **.nei file

NEI=e

_neie

_NEIE option is on, neighbour list,  squared neighbour distances and vector is saved into the **.nei file

AVM=0

_avm

_AV_MOVE

ARCH=X

X

X is number indicating the architecture (like 64 for 64-bit processors) added to the filename before .exe extension

MULTI=0

_multi

Has to be used for RMC++_multi only. If not specified, RMC++_new code is assumed, and _new will be included in the filename.

INT=0

 

Use this, if you want to compile with Intel icpc instead of the default gcc.

 

You can use any number of different option switches in the same time.

Always delete the *.o object files before starting compilation with a new set of options, as make cannot detect in the object files which options were used during their compilation, and it will use the old compilatipns’s object files instead of recompiling them if the source was not modified!

 

Example:

If you want to compile the RMC++_new program with ATLAS usage and summing the ppcf option on a 64-bit processor, use the command

       make AT=0 SUMP=0 ARCH=64

This will result in the executable named rmc_new_atlas_sp64.exe

 

Typing ‘make help’ in the command line in the directory where the new Makefile located will give instruction on the usage as well.

 

Availability

The Source packages on the download page will contain only this new Makefile from now on, but you can download it separately from here as well.

                              

Go to RMC++_home


Last modified 08/09/2009 by Orsolya Gereben