Compiling frealign...

Notes on compiling frealign 8 (http://emlab.rose2.brandeis.edu/frealign).

So, in line with my duties as resident computer geek I am compiling frealign in Mac OS X (10.5.8) and Linux (CentOS). First of all, I tried the osx Makefile included in with the source code:

#
# ------ MAKEFILE FILE FOR OS X Intel FREALIGN -----------IFORT
#
# Using: INTEL compilers
#
# Notes: To create executable: make -f Makefile_osx86-64_intel
#

#SHELL = /bin/csh

FFLAGS = -w -c -m64 -shared-intel

CFLAGS = -c -w -m64 -shared-intel

COMP = ifort

CC = icc

LF = -m64 -shared-intel -Wl,-t

PGM = frealign_v8

LIB = $(PGM).a

.PRECIOUS : $(PGM) $(LIB)

include Makefile.inc

$(PGM) : $(PGM).o $(LIB)
@echo linking $(PGM)
$(COMP) $(LF) $(PGM).o $(LIB) -o ../bin/$(PGM).exe
#ld64 -arch x86_64 frealign_v8.o frealign_v8.a -o ../bin/$(PGM).exe
@\rm $(PGM).o

$(PGM).o : $(PGM).f
$(COMP) $(FFLAGS) -o $(PGM).o $(PGM).f

ioc.o : ioc.c
$(CC) $(CFLAGS) -o ioc.o ioc.c
$(AR) r $(LIB) ioc.o
@\rm ioc.o

$(LIB) : ioc.o $(ELEMENTS)
@echo all object files placed in library

.f.a:
$(COMP) $(FFLAGS) $<
$(AR) rc $(LIB) $*.o
@\rm $*.o

clean:
@\rm -f *.o *.a

Now, this works fine and creates a file called frealing_v8.exe. I renamed that to frealign_v8.normal.exe. Thus, I move it out of the way to try some different flags.

For example, the flags

CFLAGS = -c -w -m64 -shared-intel -openmp

or

CFLAGS = -c -w -m64 -shared-intel -parallel

or both

CFLAGS = -c -w -m64 -shared-intel -openmp -parallel

work nicely on OS X with intel compilers (version 11.0.059). Now, it has to be compiled a machine with icc and ifort libraries installed or it won't run.

I am not fan of the Portland Compilers (http://www.pgroup.com/) but I need them to compiler Spider (http://www.wadsworth.org/spider_doc/spider/docs/spider.html) with MPI function.
So, I signed up for a trial license (I think it lasts for 15 days or so). Sadly, so far I have had no luck...

Comments

Popular Posts