Need help compiling OpenSeesMP 2.2.0

For developers writing C++, Fortran, Java, code who have questions or comments to make.

Moderators: silvia, selimgunay, Moderators

Post Reply
hugo_esquivel
Posts: 71
Joined: Fri Nov 06, 2009 6:40 am
Location: Universidad del Norte, Colombia

Need help compiling OpenSeesMP 2.2.0

Post by hugo_esquivel »

Hi Frank. I have spent months trying to compile OpenSeesMP 2.1.0/2.2.0 on Snow Leopard without any success. Please... Could you take a look at my makefile (which has been posted after the jump) in order to give me some indication where the problem/error is.

The compilation process always finishes with these lines:

-------------------------------------------------
make[3]: Nothing to be done for `all'.
make[2]: Nothing to be done for `all'.
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
/usr/bin/ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
ranlib: file: /Users/hresquivelo/lib/libOpenSees.a(NeesCentral.o) has no symbols
LIBRARIES BUILT ... NOW LINKING OpenSees PROGRAM
make[1]: Nothing to be done for `tcl'.
Makefile:21: warning: overriding commands for target `tcl'
Makefile:13: warning: ignoring old commands for target `tcl'
Makefile:60: warning: overriding commands for target `tcl'
Makefile:21: warning: ignoring old commands for target `tcl'
Makefile:71: warning: overriding commands for target `tk'
Makefile:29: warning: ignoring old commands for target `tk'
make[2]: Nothing to be done for `tcl'.
echo /usr/local/openseeslib/openmpi/1.4.1/bin/mpic++ -L/usr/local/openseeslib/openmpi/1.4.1/lib -lmpi /Users/hresquivelo/OpenSees/SRC/tcl/tclMain.o /Users/hresquivelo/OpenSees/SRC/tcl/mpiParameterMain.o /Users/hresquivelo/OpenSees/SRC/tcl/commands.o /Users/hresquivelo/OpenSees/SRC/modelbuilder/tcl/myCommands.o /Users/hresquivelo/OpenSees/SRC/actor/channel/MPI_Channel.o /Users/hresquivelo/OpenSees/SRC/actor/machineBroker/MPI_MachineBroker.o /Users/hresquivelo/OpenSees/SRC/domain/subdomain/ActorSubdomain.o /Users/hresquivelo/OpenSees/SRC/domain/subdomain/ShadowSubdomain.o /Users/hresquivelo/OpenSees/SRC/tcl/TclFeViewer.o /Users/hresquivelo/OpenSees/SRC/tcl/TclVid eoPlayer.o \
/Users/hresquivelo/lib/libOpenSees.a -L/usr/local/lib -L/Users/hresquivelo/lib /Users/hresquivelo/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/DistributedSuperLU.o /Users/hresquivelo/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/DistributedSparseGenColLinSOE.o /Users/hresquivelo/lib/libDistributedSuperLU.a /usr/local/openseeslib/scalapack/blacs_MPI-mac-0.a /usr/local/openseeslib/scalapack/blacsCinit_MPI-mac-0.a /usr/local/openseeslib/scalapack/blacsF77init_MPI-mac-0.a /usr/local/openseeslib/scalapack/blas_mac.a /usr/local/openseeslib/scalapack/lapack_mac.a /usr/local/openseeslib/scalapack/libscalapack.a /Users/hresquivelo/lib/libMetis.a -L/usr/local)/openseeslib/openmpi/1.4.1/lib -lmpi_cxx -lmpi_f77 -lmpi -lopen-rte -lopen-pal \
/Users/hresquivelo/lib/libArpack.a /Users/hresquivelo/lib/libSuperLU.a /Users/hresquivelo/lib/libUmfpack.a /Users/hresquivelo/lib/libLapack.a /Users/hresquivelo/lib/libCBlas.a /Users/hresquivelo/lib/libBlas.a /Users/hresquivelo/lib/libCBlas.a -ldl -L/usr/local/openseeslib/gcc/4.4.3/lib -lgfortran -framework Tcl -framework Tk \
-lssl -o /Users/hresquivelo/bin/OpenSeesMP
/bin/sh: -c: line 0: syntax error near unexpected token `)'
/bin/sh: -c: line 0: `echo /usr/local/openseeslib/openmpi/1.4.1/bin/mpic++ -L/usr/local/openseeslib/openmpi/1.4.1/lib -lmpi /Users/hresquivelo/OpenSees/SRC/tcl/tclMain.o /Users/hresquivelo/OpenSees/SRC/tcl/mpiParameterMain.o /Users/hresquivelo/OpenSees/SRC/tcl/commands.o /Users/hresquivelo/OpenSees/SRC/modelbuilder/tcl/myCommands.o /Users/hresquivelo/OpenSees/SRC/actor/channel/MPI_Channel.o /Users/hresquivelo/OpenSees/SRC/actor/machineBroker/MPI_MachineBroker.o /Users/hresquivelo/OpenSees/SRC/domain/subdomain/ActorSubdomain.o /Users/hresquivelo/OpenSees/SRC/domain/subdomain/ShadowSubdomain.o /Users/hresquivelo/OpenSees/SRC/tcl/TclFeViewer.o /Users/hresquivelo/OpenSees/SRC/tcl/TclVid eoPlayer.o /Users/hresquivelo/lib/libOpenSees.a -L/usr/local/lib -L/Users/hresquivelo/lib /Users/hresquivelo/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/DistributedSuperLU.o /Users/hresquivelo/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/DistributedSparseGenColLinSOE.o /Users/hresquivelo/lib/libDistributedSuperLU.a /usr/local/openseeslib/scalapack/blacs_MPI-mac-0.a /usr/local/openseeslib/scalapack/blacsCinit_MPI-mac-0.a /usr/local/openseeslib/scalapack/blacsF77init_MPI-mac-0.a /usr/local/openseeslib/scalapack/blas_mac.a /usr/local/openseeslib/scalapack/lapack_mac.a /usr/local/openseeslib/scalapack/libscalapack.a /Users/hresquivelo/lib/libMetis.a -L/usr/local)/openseeslib/openmpi/1.4.1/lib -lmpi_cxx -lmpi_f77 -lmpi -lopen-rte -lopen-pal /Users/hresquivelo/lib/libArpack.a /Users/hresquivelo/lib/libSuperLU.a /Users/hresquivelo/lib/libUmfpack.a /Users/hresquivelo/lib/libLapack.a /Users/hresquivelo/lib/libCBlas.a /Users/hresquivelo/lib/libBlas.a /Users/hresquivelo/lib/libCBlas.a -ldl -L/usr/local/openseeslib/gcc/4.4.3/lib -lgfortran -framework Tcl -framework Tk -lssl -o /Users/hresquivelo/bin/OpenSeesMP'
make[1]: *** [tcl] Error 2
make: *** [all] Error 2
-------------------------------------------------

Many thanks in advance.

PS: Libraries successfully built:
1. libArpack.a
2. libBlas.a
3. libCBlas.a
4. libDistributedSuperLU.a
5. libLapack.a
6. libmatmod.a
7. libMetis.a
8. libndarray.a
9. libOpenSees.a
10. libSuperLU.a
11. libUmfpack.a
Last edited by hugo_esquivel on Tue Jun 01, 2010 6:28 am, edited 1 time in total.
hugo_esquivel
Posts: 71
Joined: Fri Nov 06, 2009 6:40 am
Location: Universidad del Norte, Colombia

Re: Need help compiling OpenSeesMP 2.2.0

Post by hugo_esquivel »

# ---------------------------------------------------------------- #
# SECTION 1: PROGRAM #
# ---------------------------------------------------------------- #
# Specify the location and name of the OpenSees interpreter #
# program that will be created (if this all works!). #
# ---------------------------------------------------------------- #

BASE = /usr/local
HOME = /Users/hresquivelo
FE = $(HOME)/OpenSees/SRC

# OpenSeesMP
PROGRAMMING_MODE = PARALLEL_INTERPRETERS

# OPTIONS = DEBUG | NO_DEBUG
DEBUG_MODE = NO_DEBUG

# OPTIONS = YES_RELIABILITY | NO_RELIABILITY
RELIABILITY = NO_RELIABILITY

OpenSees_PROGRAM = $(HOME)/bin/OpenSeesMP


# ---------------------------------------------------------------- #
# SECTION 2: PATHS #
# ---------------------------------------------------------------- #
# NOTE: If vendor supplied BLAS and LAPACK libraries or if you #
# have any of the libraries already, leave the directory location #
# blank and remove the directory from DIRS. #
# ---------------------------------------------------------------- #

BLASdir = $(HOME)/OpenSees/OTHER/BLAS
CBLASdir = $(HOME)/OpenSees/OTHER/CBLAS
LAPACKdir = $(HOME)/OpenSees/OTHER/LAPACK
SUPERLUdir = $(HOME)/OpenSees/OTHER/SuperLU_3.0/SRC
SUPERLU_DISTdir = $(HOME)/OpenSees/OTHER/SuperLU_DIST_2.0/SRC
ARPACKdir = $(HOME)/OpenSees/OTHER/ARPACK
UMFPACKdir = $(HOME)/OpenSees/OTHER/UMFPACK
METISdir = $(HOME)/OpenSees/OTHER/METIS
SRCdir = $(HOME)/OpenSees/SRC

DIRS = $(BLASdir) $(CBLASdir) $(LAPACKdir) $(SUPERLUdir) \
$(SUPERLU_DISTdir) $(ARPACKdir) $(UMFPACKdir) $(METISdir) $(SRCdir)



# ---------------------------------------------------------------- #
# SECTION 3: LIBRARIES #
# ---------------------------------------------------------------- #
# The following section defines the libraries that will be created #
# and/or linked with when the libraries are being created or #
# linked with. #
# NOTE 1: If vendor supplied BLAS and LAPACK libraries leave the #
# libraries blank. You have to get your own copy of the tcl/tk #
# library! #
# NOTE 2: For libraries that will be created (any in DIRS above) #
# make sure the directory exsists where you want the library to go #
# ---------------------------------------------------------------- #

FE_LIBRARY = $(HOME)/lib/libOpenSees.a
NDARRAY_LIBRARY = $(HOME)/lib/libndarray.a # BJ_UCD
MATMOD_LIBRARY = $(HOME)/lib/libmatmod.a # BJ_UCD
BJMISC_LIBRARY = $(HOME)/lib/libBJmisc.a # BJ_UCD
BLAS_LIBRARY = $(HOME)/lib/libBlas.a
CBLAS_LIBRARY = $(HOME)/lib/libCBlas.a
LAPACK_LIBRARY = $(HOME)/lib/libLapack.a
SUPERLU_LIBRARY = $(HOME)/lib/libSuperLU.a
ARPACK_LIBRARY = $(HOME)/lib/libArpack.a
UMFPACK_LIBRARY = $(HOME)/lib/libUmfpack.a
METIS_LIBRARY = $(HOME)/lib/libMetis.a
DISTRIBUTED_SUPERLU_LIBRARY = $(HOME)/lib/libDistributedSuperLU.a
CLAPACK_LIBRARY =
CLBLAS_LIBRARY =

ifeq ($(RELIABILITY), YES_RELIABILITY)
RELIABILITY_LIBRARY = $(HOME)/lib/libReliability.a
endif

TCL_LIBRARY = -framework Tcl -framework Tk

WIPE_LIBS = $(FE_LIBRARY) $(NDARRAY_LIBRARY) $(MATMOD_LIBRARY) \
$(BJMISC_LIBRARY) $(LAPACK_LIBRARY) $(BLAS_LIBRARY) \
$(CBLAS_LIBRARY) $(SUPERLU_LIBRARY) $(ARPACK_LIBRARY) \
$(UMFPACK_LIBRARY) $(METIS_LIBRARY) $(RELIABILITY_LIBRARY) \
$(DISTRIBUTED_SUPERLU_LIBRARY)



# ----------------------------------------------------------------- #
# SECTION 4: COMPILERS #
# ----------------------------------------------------------------- #
# The following macros specify compilers, linker/loaders, the #
# archiver, and their options. You need to make sure these are #
# correct for your system. #
# ----------------------------------------------------------------- #

PROGRAMMING_FLAG = -D_PARALLEL_INTERPRETERS
SCALAP_FLAG = -D_SCALAP
GRAPHICS = NONE
GRAPHIC_FLAG = -D_NOGRAPHICS
AGL_OBJS =
OS_FLAG = -D_MACOSX

ifeq ($(RELIABILITY), YES_RELIABILITY)
RELIABILITY_FLAG = -D_RELIABILITY
endif

CC++ = $(BASE)/openseeslib/openmpi/1.4.1/bin/mpic++
CC = $(BASE)/openseeslib/openmpi/1.4.1/bin/mpicc
FC = $(BASE)/openseeslib/openmpi/1.4.1/bin/mpif77

LINKER = $(CC++)
LINKFLAGS = -L$(BASE)/openseeslib/openmpi/1.4.1/lib -lmpi

AR = ar
ARFLAGS = cqls
RANLIB = ranlib
RANLIBFLAGS =

C++FLAGS = -Wall $(OS_FLAG) -D_LINUX -D_UNIX -D_TCL85 -D_HTTTPS -D_COROTATIONAL \
$(RELIABILITY_FLAG) $(SCALAP_FLAG) $(PROGRAMMING_FLAG) $(GRAPHIC_FLAG) \
-O3 -ffloat-store

CFLAGS = -Wall -O2

FFLAGS = -Wall -O -DCUBLAS -x f77-cpp-input --no-second-underscore


# MISCELLANEOUS
MKDIR = mkdir
MAKE = make
CD = cd
ECHO = echo
RM = rm
RMFLAGS = -f
SHELL = /bin/sh



# ----------------------------------------------------------------- #
# SECTION 5: COMPILATION #
# ----------------------------------------------------------------- #
# The following macros specify the macros used in to compile the #
# source code into object code. #
# ----------------------------------------------------------------- #

.SUFFIXES:
.SUFFIXES: .C .c .f .f90 .cpp .o .cpp

.DEFAULT:
@$(ECHO) "Unknown target $@, try: make help"

.cpp.o:
@$(ECHO) Making $@ from $<
$(CC++) $(C++FLAGS) $(INCLUDES) -c $< -o $@

.C.o:
@$(ECHO) Making $@ from $<
$(CC++) $(C++FLAGS) $(INCLUDES) -c $< -o $@
.c.o:
@$(ECHO) Making $@ from $<
$(CC) $(CFLAGS) -c $< -o $@
.f.o:
@$(ECHO) Making $@ from $<
$(FC) $(FFLAGS) -c $< -o $@



# ----------------------------------------------------------------- #
# SECTION 6: OTHER LIBRARIES #
# ----------------------------------------------------------------- #
# The following macros specify other libraries that must be linked #
# with when creating executables. These are platform specific and #
# typically order does matter! #
# ----------------------------------------------------------------- #

SCALAP_LIB = $(BASE)/openseeslib/scalapack/blacs_MPI-mac-0.a \
$(BASE)/openseeslib/scalapack/blacsCinit_MPI-mac-0.a \
$(BASE)/openseeslib/scalapack/blacsF77init_MPI-mac-0.a \
$(BASE)/openseeslib/scalapack/blas_mac.a \
$(BASE)/openseeslib/scalapack/lapack_mac.a \
$(BASE)/openseeslib/scalapack/libscalapack.a

MACHINE_LINKLIBS = -L$(BASE)/lib -L$(HOME)/lib

MACHINE_NUMERICAL_LIBS = $(ARPACK_LIBRARY) $(SUPERLU_LIBRARY) \
$(UMFPACK_LIBRARY) $(LAPACK_LIBRARY) $(CLAPACK_LIBRARY) \
$(CBLAS_LIBRARY) $(BLAS_LIBRARY) $(CBLAS_LIBRARY) $(GRAPHIC_LIBRARY) \
-ldl -L$(BASE)/openseeslib/gcc/4.4.3/lib -lgfortran

MACHINE_SPECIFIC_LIBS = -lssl

PARALLEL_LIB = $(FE)/system_of_eqn/linearSOE/sparseGEN/DistributedSuperLU.o \
$(FE)/system_of_eqn/linearSOE/sparseGEN/DistributedSparseGenColLinSOE.o \
$(DISTRIBUTED_SUPERLU_LIBRARY) $(SCALAP_LIB) $(METIS_LIBRARY) \
-L$(BASE))/openseeslib/openmpi/1.4.1/lib -lmpi_cxx -lmpi_f77 -lmpi -lopen-rte -lopen-pal



# ----------------------------------------------------------------- #
# SECTION 7: INCLUDE FILES #
# ----------------------------------------------------------------- #
# The following macros specify include files needed for compilation #
# ----------------------------------------------------------------- #

MACHINE_INCLUDES = -I/usr/include -I$(BASE)/include \
-I$(HOME)/OpenSees/OTHER/SuperLU_DIST_2.0/SRC

include $(FE)/Makefile.incl

TCL_INCLUDES = -I/Library/Frameworks/Tcl.framework/Headers \
-I/Library/Frameworks/Tk.framework/Headers

INCLUDES = $(FE_INCLUDES) $(TCL_INCLUDES) $(MACHINE_INCLUDES)
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

try typing 'make tcl' in OpenSees/SRC/modelbuilder/tcl
hugo_esquivel
Posts: 71
Joined: Fri Nov 06, 2009 6:40 am
Location: Universidad del Norte, Colombia

Post by hugo_esquivel »

Hi Frank. Thank you very much for reply. This is what I get when I type 'make tcl' in OpenSees/SRC/modelbuilder/tcl...

--------------------------
Makefile:21: warning: overriding commands for target `tcl'
Makefile:13: warning: ignoring old commands for target `tcl'
Makefile:60: warning: overriding commands for target `tcl'
Makefile:21: warning: ignoring old commands for target `tcl'
Makefile:71: warning: overriding commands for target `tk'
Makefile:29: warning: ignoring old commands for target `tk'
make[1]: Nothing to be done for `tcl'.
echo /usr/local/openseeslib/openmpi/1.4.1/bin/mpic++ -L/usr/local/openseeslib/openmpi/1.4.1/lib -lmpi /Users/hresquivelo/OpenSees/SRC/tcl/tclMain.o /Users/hresquivelo/OpenSees/SRC/tcl/mpiParameterMain.o /Users/hresquivelo/OpenSees/SRC/tcl/commands.o /Users/hresquivelo/OpenSees/SRC/modelbuilder/tcl/myCommands.o /Users/hresquivelo/OpenSees/SRC/actor/channel/MPI_Channel.o /Users/hresquivelo/OpenSees/SRC/actor/machineBroker/MPI_MachineBroker.o /Users/hresquivelo/OpenSees/SRC/domain/subdomain/ActorSubdomain.o /Users/hresquivelo/OpenSees/SRC/domain/subdomain/ShadowSubdomain.o /Users/hresquivelo/OpenSees/SRC/tcl/TclFeViewer.o /Users/hresquivelo/OpenSees/SRC/tcl/TclVid eoPlayer.o \
/Users/hresquivelo/lib/libOpenSees.a -L/usr/local/lib -L/Users/hresquivelo/lib /Users/hresquivelo/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/DistributedSuperLU.o /Users/hresquivelo/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/DistributedSparseGenColLinSOE.o /Users/hresquivelo/lib/libDistributedSuperLU.a /usr/local/openseeslib/scalapack/blacs_MPI-mac-0.a /usr/local/openseeslib/scalapack/blacsCinit_MPI-mac-0.a /usr/local/openseeslib/scalapack/blacsF77init_MPI-mac-0.a /usr/local/openseeslib/scalapack/blas_mac.a /usr/local/openseeslib/scalapack/lapack_mac.a /usr/local/openseeslib/scalapack/libscalapack.a /Users/hresquivelo/lib/libMetis.a -L/usr/local)/openseeslib/openmpi/1.4.1/lib -lmpi_cxx -lmpi_f77 -lmpi -lopen-rte -lopen-pal \
/Users/hresquivelo/lib/libArpack.a /Users/hresquivelo/lib/libSuperLU.a /Users/hresquivelo/lib/libUmfpack.a /Users/hresquivelo/lib/libLapack.a /Users/hresquivelo/lib/libCBlas.a /Users/hresquivelo/lib/libBlas.a /Users/hresquivelo/lib/libCBlas.a -ldl -L/usr/local/openseeslib/gcc/4.4.3/lib -lgfortran -framework Tcl -framework Tk \
-lssl -o /Users/hresquivelo/bin/OpenSeesMP
/bin/sh: -c: line 0: syntax error near unexpected token `)'
/bin/sh: -c: line 0: `echo /usr/local/openseeslib/openmpi/1.4.1/bin/mpic++ -L/usr/local/openseeslib/openmpi/1.4.1/lib -lmpi /Users/hresquivelo/OpenSees/SRC/tcl/tclMain.o /Users/hresquivelo/OpenSees/SRC/tcl/mpiParameterMain.o /Users/hresquivelo/OpenSees/SRC/tcl/commands.o /Users/hresquivelo/OpenSees/SRC/modelbuilder/tcl/myCommands.o /Users/hresquivelo/OpenSees/SRC/actor/channel/MPI_Channel.o /Users/hresquivelo/OpenSees/SRC/actor/machineBroker/MPI_MachineBroker.o /Users/hresquivelo/OpenSees/SRC/domain/subdomain/ActorSubdomain.o /Users/hresquivelo/OpenSees/SRC/domain/subdomain/ShadowSubdomain.o /Users/hresquivelo/OpenSees/SRC/tcl/TclFeViewer.o /Users/hresquivelo/OpenSees/SRC/tcl/TclVid eoPlayer.o /Users/hresquivelo/lib/libOpenSees.a -L/usr/local/lib -L/Users/hresquivelo/lib /Users/hresquivelo/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/DistributedSuperLU.o /Users/hresquivelo/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/DistributedSparseGenColLinSOE.o /Users/hresquivelo/lib/libDistributedSuperLU.a /usr/local/openseeslib/scalapack/blacs_MPI-mac-0.a /usr/local/openseeslib/scalapack/blacsCinit_MPI-mac-0.a /usr/local/openseeslib/scalapack/blacsF77init_MPI-mac-0.a /usr/local/openseeslib/scalapack/blas_mac.a /usr/local/openseeslib/scalapack/lapack_mac.a /usr/local/openseeslib/scalapack/libscalapack.a /Users/hresquivelo/lib/libMetis.a -L/usr/local)/openseeslib/openmpi/1.4.1/lib -lmpi_cxx -lmpi_f77 -lmpi -lopen-rte -lopen-pal /Users/hresquivelo/lib/libArpack.a /Users/hresquivelo/lib/libSuperLU.a /Users/hresquivelo/lib/libUmfpack.a /Users/hresquivelo/lib/libLapack.a /Users/hresquivelo/lib/libCBlas.a /Users/hresquivelo/lib/libBlas.a /Users/hresquivelo/lib/libCBlas.a -ldl -L/usr/local/openseeslib/gcc/4.4.3/lib -lgfortran -framework Tcl -framework Tk -lssl -o /Users/hresquivelo/bin/OpenSeesMP'
make: *** [tcl] Error 2
------------------------------


What should I do next.

Many thanks in advance.
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

we need to find the file that it failing to compile .. open it and find out what the crap at the start of the file is .. try doing a 'make tcl' in OpenSes/SRC/tcl this time.
hugo_esquivel
Posts: 71
Joined: Fri Nov 06, 2009 6:40 am
Location: Universidad del Norte, Colombia

Post by hugo_esquivel »

Hi Frank. By typing 'make tcl' in OpenSes/SRC/tcl, I get:
make: Nothing to be done for `tcl'.

I think something is definitely missing in such makefile (OpenSes/SRC/tcl/Makefile). For example, the way how commands.o, tclMain.o and mpiParameterMain.o are linked, is an information that from my point of view is required. Let me know if I am wrong.

And... what role does FEAP_ELE_LIBS definition play in such makefile?

Thank you!
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

eoPlayer.o seems to be missing a slash in what you show .. check your Makefile.df


/Users/hresquivelo/OpenSees/SRC/tcl/TclFeViewer.o /Users/hresquivelo/OpenSees/SRC/tcl/TclVid eoPlayer.o \
hugo_esquivel
Posts: 71
Joined: Fri Nov 06, 2009 6:40 am
Location: Universidad del Norte, Colombia

Post by hugo_esquivel »

Missing a slash? This time I cannot follow you. The string "TclVid eoPlayer.o" is actually the name of a file. It was necessary to write it as so (separated) because the site considers "vid eo" as a spam.

Have I misunderstood you?
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

ok not that, i forgot about your vid eo problem.

the final make command that it is failing on is in OpenSees/SRC/modelbuilder/tcl

copy the Makefile to something else Makefile.ORIG

delete the lines from after all: (line 10)
yo ifeq(..PARALLEL_INTERPRETERS) (line 57)
delete the subsequent endif on line 77

type make tcl and you should still see your error,

in the
tcl: $(OBJS)
@$(CD) $(FE)/tcl; $(MAKE) tcl;
$(ECHO) $(LINKER) $(LINKFLAGS) $(INTERPRETER_LIBS_MPI_PARAMETERS) \
$(FE_LIBRARY) $(MACHINE_LINKLIBS) $(PARALLEL_LIB) \
$(MACHINE_NUMERICAL_LIBS) $(TCL_LIBRARY) \
$(MACHINE_SPECIFIC_LIBS) -o $(OpenSees_PROGRAM)
@$(LINKER) $(LINKFLAGS) $(INTERPRETER_LIBS_MPI_PARAMETERS) \
$(FE_LIBRARY) $(MACHINE_LINKLIBS) $(PARALLEL_LIB) \
$(MACHINE_NUMERICAL_LIBS) $(TCL_LIBRARY) \
$(MACHINE_SPECIFIC_LIBS) -o $(OpenSees_PROGRAM)


there are 2 commands, the first echo's the command and the second executes it. remove the echo command.

try make tcl
if it fails try removing the different LIBS one by one to see if that error goes away (you want it to compile and give an error message about missing libs) .. if it goes away it is due to the def for a LIB
hugo_esquivel
Posts: 71
Joined: Fri Nov 06, 2009 6:40 am
Location: Universidad del Norte, Colombia

Post by hugo_esquivel »

Hi Frank. Thank you very much to point me out where the problem was. For the first time I have OpenSeesMP 2.2.1 compiled on my computer!

In:
---------------------
PARALLEL_LIB = $(FE)/system_of_eqn/linearSOE/sparseGEN/DistributedSuperLU.o \
$(FE)/system_of_eqn/linearSOE/sparseGEN/DistributedSparseGenColLinSOE.o \
$(DISTRIBUTED_SUPERLU_LIBRARY) $(SCALAP_LIB) $(METIS_LIBRARY) \
-L$(BASE))/openseeslib/openmpi/1.4.1/lib -lmpi_cxx -lmpi_f77 -lmpi -lopen-rte -lopen-pal
---------------------

I had written ")" twice. The funny thing is that it was a mistake that I always had from the beginning. Additionally, I made some modifications to my makefile and added the AMD library plus libgfortran.dylib for 64-bit in MACHINE_NUMERICAL_LIBS, because they seemed to be required during compilation process.

Many thanks indeed!
Post Reply