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