Back to Rosetta 2.3


I had to go back to Rosetta 2.3 for some protein design I did four years back. As usual, I had to tweak the makefile to make it work.

First of all, I had to trackdown what the libz.a library was for and where to get the code for it. That I already had done in my previous post:

http://macosxpostdoc.blogspot.mx/2010/01/compiling-rosetta-230.html

Next, I edited the makefile. I prefer to use the intel c and fortran compilers (see here) but you can probably get away with gcc.

Here is the mactel section of my rewriten makefile:


ifeq ($(MAKECMDGOALS),mactel)
  BUILD_TYPE = mactel
  BUILD_MODE := release
  CC  = $(ICC)
  CXX = $(IXX)
  WARNFLAGS = $(INTEL_WARNFLAGS) -Wno-long-double
  DEPFLAGS = $(INTEL_DEPFLAGS)
  DEBUGFLAGS :=
  OPTFLAGS := -DNDEBUG -O3 -ip -axWN -Qoption,c,-ip_ninl_max_stats=500 -Qoption,c,-ip_ninl_max_total_stats=5000
  #OPTFLAGS := -pipe -ffor-scope -fno-exceptions
  #OPTFLAGS += -ffast-math -funroll-loops
  #OPTFLAGS += -finline-functions -finline-limit=20000
  #OPTFLAGS += -DNDEBUG -O3 -s
  COPTFLAGS := -std=c99
  CXXOPTFLAGS := -std=c++98
  # XXX: Fill out platform path for macttel
  INCLUDE_DIRS += -Isrc/platform/macos/
  LDFLAGS := -Llib
  # Set stack size to max 64M at link time
  #LDFLAGS += -isysroot /Developer/SDKs/MacOSX10.6.sdk -Wl,-stack_size,4000000,-stack_addr,0xc0000000
  LIB_OBJ += /sw64/lib/libz.a
  LDLIBS = $(INTEL_LDLIBS)
  STRIP = strip
endif

Then, it is just a matter of issuing a:

make mactel

and wait for the results. In my macbookpro and in two macpros it workes like a charm.

PS. if you think I got something wrong or that my computer will melt for running this code please comment.

Have a good one.


Comments

Popular Posts