Personal tools
You are here: Home cm Wiki compiling a local version of cmiss on a ia64 machine with MKL library's
Views
FrontPage >>

compiling a local version of cmiss on a ia64 machine with MKL library's

last edited 1 year ago by snie007
cvs out the relevant cm directories

ideally you use the ifort compilers read Karls page on compiling on xeon machines for morer detail on using the ifort compiler
compile utilities bin2base64 (do this OPT and debug from the beginning)
compile perl_interpreter
compile sqp
compile lsoda
compile lsolver using:
gmake OPT= MP= MKLPATH=/opt/intel/mkl/9.1/lib/64 BUILDING_LAPACK=flase BUILDING_BLAS=flase
compile cm
gmake OPT= MP=  MKLPATH=/opt/intel/mkl/9.1/lib/64

Note:

If you do not know where the libs are type
find / -name libmkl_lapack.a     

ORAC have moved location of files to:
/home/system/software/orac/intelmkl-9.1.018/lib/64/


when using MKL libs you will need to make the following modifications to the cm make file:
remove references to g2c when using ifort

<   DYNAMIC_LIBRARIES = dl crypt pthread g2c
---
>   DYNAMIC_LIBRARIES = dl crypt pthread

<         DYNAMIC_LIBRARIES += g2c
---
>         DYNAMIC_LIBRARIES +=

<       DYNAMIC_LIBRARIES += g2c
---
>       DYNAMIC_LIBRARIES +=

add in 
MKL_ARCHIVE_DIR=$(MKLPATH)

remove the line continuation 

<       $(patsubst %,$(MKL_ARCHIVE_DIR)/lib%.a, $(MKL_LIBRARIES)) \
---
>       $(patsubst %,$(MKL_ARCHIVE_DIR)/lib%.a, $(MKL_LIBRARIES))


for the Make file in lsoda

add ia64 to 

  ifeq ($(MACHNAME),x86_64)
    # Intel compilers
    # Use Intel compilers if available
    # (icc -V sends output to STDERR and exits with error).
    ifneq (,$(shell icc -V 2>&1 | grep -i intel))
      CC = icc
    endif
    ifneq (,$(shell ifort -V 2>&1 | grep -i intel))
      FC = ifort
      FFLAGS += -fPIC
    endif

change to:

  ifeq ($(MACHNAME),x86_64 ia64)
    # Intel compilers
    # Use Intel compilers if available
    # (icc -V sends output to STDERR and exits with error).
    ifneq (,$(shell icc -V 2>&1 | grep -i intel))
      CC = icc
    endif
    ifneq (,$(shell ifort -V 2>&1 | grep -i intel))
      FC = ifort
      FFLAGS += -fPIC
    endif

for the make file for sqp change:
 
  # Intel compiler
  else
  ifeq ($(FC),efc)
    # turn on warnings,
    # suppress messages about non-standard fortran (including REAL*8,

to 
  # Intel compiler
  else
  ifeq ($(FC),efc)
FC = ifort
    # turn on warnings,
    # suppress messages about non-standard fortran (including REAL*8,

This should allow the you to compile 

I have not compiled cellml as it is not set up for ifort and hence the cost of using cellml is to high. I have proffered to use cellml to generate fortran code and then copy this into user cell. 








hopefully this will allow you to compile correctly.