Compilation Error on Debian 6.02 (Squeeze)

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

Moderators: silvia, selimgunay, Moderators

Post Reply
Faisal
Posts: 9
Joined: Fri Nov 23, 2007 9:27 am
Location: University of Engineering & Technology Peshawar Pakistan
Contact:

Compilation Error on Debian 6.02 (Squeeze)

Post by Faisal »

I have a 02 quesitons:
Q1. Is there a Problem with my make file?
or
Q2. Is there some error in code?


I am using Debian 6.02 (Squeeze) amd - 64 bit.


Yesterday I downloaded OpenSees - Release 1 from below command:

svn co svn://opensees.berkeley.edu/usr/local/svn/OpenSees/trunk OpenSees


I picked ../MAKES/Makefile.def.Ubuntu9.04 for Makefile.def.

I customized the Makefile.def as shown below:


############################################################################
#
# Program: OpenSees
#
# Purpose: A Top-level Makefile to create the libraries needed
# to use the OpenSees framework. Works on Linux version 6.1
# and below.
#
# Written: fmk
# Created: 10/99
#
# Send bug reports, comments or suggestions to fmckenna@ce.berkeley.edu
#
############################################################################

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

OpenSees_PROGRAM = $(HOME)/bin/OpenSees

OPERATING_SYSTEM = LINUX
GRAPHICS = UsingOpenGL
PROGRAMMING_MODE = SEQUENTIAL
DEBUG_MODE = NO_DEBUG
RELIABILITY = NO_RELIABILITY


# %---------------------------------%
# | 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.

BASE = /usr/local
HOME = /home/faisal
FE = $(HOME)/opensees-svn/OpenSees/SRC

BLASdir = $(HOME)/opensees-svn/OpenSees/OTHER/BLAS
CBLASdir = $(HOME)/opensees-svn/OpenSees/OTHER/CBLAS
LAPACKdir = $(HOME)/opensees-svn/OpenSees/OTHER/LAPACK
SUPERLUdir = $(HOME)/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC
ARPACKdir = $(HOME)/opensees-svn/OpenSees/OTHER/ARPACK
UMFPACKdir = $(HOME)/opensees-svn/OpenSees/OTHER/UMFPACK
METISdir = $(HOME)/opensees-svn/OpenSees/OTHER/METIS
AMDdir = $(HOME)/opensees-svn/OpenSees/OTHER/AMD
SRCdir = $(HOME)/opensees-svn/OpenSees/SRC


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

# %-------------------------------------------------------%
# | 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: if vendor supplied BLAS and LAPACK libraries leave the
# libraries blank. You have to get your own copy of the tcl/tk
# library!!
#
# Note: 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 jeremic@ucdavis.edu
MATMOD_LIBRARY = $(HOME)/lib/libmatmod.a # BJ_UCD jeremic@ucdavis.edu
BJMISC_LIBRARY = $(HOME)/lib/libBJmisc.a # BJ_UCD jeremic@ucdavis.edu
LAPACK_LIBRARY = $(HOME)/lib/libLapack.a
BLAS_LIBRARY = $(HOME)/lib/libBlas.a
SUPERLU_LIBRARY = $(HOME)/lib/libSuperLU.a
CBLAS_LIBRARY = $(HOME)/lib/libCBlas.a
ARPACK_LIBRARY = $(HOME)/lib/libArpack.a
UMFPACK_LIBRARY = $(HOME)/lib/libUmfpack.a
METIS_LIBRARY = $(HOME)/lib/libMetis.a
AMD_LIBRARY = $(HOME)/lib/libAMD.a
TCL_LIBRARY = /usr/lib/libtk8.4.so.0 /usr/lib/libX11.so /usr/lib/libtcl8.4.so.0
BLITZ_LIBRARY = /usr/lib/libblitz.so.0
GRAPHIC_LIBRARY = /usr/lib/libGL.so.1 /usr/lib/libGLU.so.1

# WATCH OUT .. These libraries are removed when 'make wipe' is invoked.
WIPE_LIBS = $(FE_LIBRARY) \
$(LAPACK_LIBRARY) \
$(BLAS_LIBRARY) \
$(CBLAS_LIBRARY) \
$(SUPERLU_LIBRARY) \
$(ARPACK_LIBRARY) \
$(UMFPACK_LIBRARY) \
$(AMD_LIBRARY) \
$(METIS_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. |
# %---------------------------------------------------------%

# Compilers
CC++ = /usr/bin/g++
CC = /usr/bin/gcc
FC = /usr/bin/gfortran-4.4

AR = ar
ARFLAGS = cqls
RANLIB = ranlib
RANLIBFLAGS =

# Compiler Flags
#
# NOTES:
# C++ FLAGS TAKE need _UNIX or _WIN32 for preprocessor dircetives
# - the _WIN32 for the Windows95/98 or NT operating system.
# C FLAGS used -DUSE_VENDOR_BLAS (needed in SuperLU) if UNIX in C++ FLAGS
#

# modified as optimizaton currently causing problems with Steeln01 code
ifeq ($(DEBUG_MODE), DEBUG)

C++FLAGS = -Wall -D_LINUX -D_UNIX -D_TCL84 \
$(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG) \
-g -pg


CFLAGS = -Wall -pg $(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG)
FFLAGS = -Wall

# Linker
LINKER = $(CC++)
LINKFLAGS = -g -pg

else

C++FLAGS = -Wall -D_LINUX -D_UNIX -D_TCL84 \
$(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) \
$(PROGRAMMING_FLAG) -O3 -ffloat-store
CFLAGS = -Wall -O2
FFLAGS = -Wall -O

# Linker
LINKER = $(CC++)
LINKFLAGS = -rdynamic -Wl

endif


GRAPHIC_FLAG = -D_GLX

# Misc
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 command. |
# %------------------%
#
.DEFAULT:
@$(ECHO) "Unknown target $@, try: make help"
#
# %-------------------------------------------%
# | Command to build .o files from .f files. |
# %-------------------------------------------%
#

.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!! |
# %---------------------------------------------------------%
MACHINE_LINKLIBS = -L$(BASE)/lib \
-L$(HOME)/lib

MACHINE_NUMERICAL_LIBS = -lm \
$(ARPACK_LIBRARY) \
$(SUPERLU_LIBRARY) \
$(UMFPACK_LIBRARY) \
$(LAPACK_LIBRARY) $(BLAS_LIBRARY) $(CBLAS_LIBRARY) \
$(AMD_LIBRARY) \
$(GRAPHIC_LIBRARY)\
-ldl -lgfortran -lpng

MACHINE_SPECIFIC_LIBS =



# %---------------------------------------------------------%
# | SECTION 7: INCLUDE FILES |
# | |
# | The following macros specify include files needed for |
# | compilation. |
# %---------------------------------------------------------%
MACHINE_INCLUDES = -I/usr/include \
-I$(BASE)/include \
-I/usr/include/cxx \
-I$(HOME)/include -I$(HOME)/blitz
# this file contains all the OpenSees/SRC includes
include $(FE)/Makefile.incl

TCL_INCLUDES = -I/usr/include/tcl8.4 -I/usr/include/

INCLUDES = $(TCL_INCLUDES) $(FE_INCLUDES) $(MACHINE_INCLUDES)


==========================================================================

But when I make, I get following error in the end:

/home/faisal/opensees-svn/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/SuperLU.h:48:23: error: slu_ddefs.h: No such file or directory
In file included from commands.cpp:47:
/home/faisal/opensees-svn/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp: In function ‘int TclCommand_addNodalLoad(void*, Tcl_Interp*, int, const char**)’:
/home/faisal/opensees-svn/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp:1491: warning: suggest explicit braces to avoid ambiguous ‘else’
/home/faisal/opensees-svn/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp: In function ‘int TclCommand_addSP(void*, Tcl_Interp*, int, const char**)’:
/home/faisal/opensees-svn/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp:2474: warning: unused variable ‘thePattern’
/home/faisal/opensees-svn/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp: In function ‘int TclCommand_addImposedMotionSP(void*, Tcl_Interp*, int, const char**)’:
/home/faisal/opensees-svn/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp:2509: warning: unused variable ‘ndf’
/home/faisal/opensees-svn/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp: In function ‘int TclCommand_Package(void*, Tcl_Interp*, int, const char**)’:
/home/faisal/opensees-svn/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp:3399: warning: unused variable ‘result’
/home/faisal/opensees-svn/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp:3389: warning: unused variable ‘funcName’
In file included from /home/faisal/opensees-svn/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/SuperLU.h:49,
from commands.cpp:228:
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h: At global scope:
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:43: error: ‘int_t’ does not name a type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:44: error: ‘int_t’ does not name a type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:54: error: ‘int_t’ does not name a type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:56: error: ISO C++ forbids declaration of ‘int_t’ with no type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:56: error: expected ‘;’ before ‘*’ token
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:57: error: ISO C++ forbids declaration of ‘int_t’ with no type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:57: error: expected ‘;’ before ‘*’ token
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:67: error: ‘int_t’ does not name a type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:69: error: ISO C++ forbids declaration of ‘int_t’ with no type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:69: error: expected ‘;’ before ‘*’ token
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:70: error: ISO C++ forbids declaration of ‘int_t’ with no type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:70: error: expected ‘;’ before ‘*’ token
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:81: error: ‘int_t’ does not name a type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:82: error: ‘int_t’ does not name a type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:84: error: ISO C++ forbids declaration of ‘int_t’ with no type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:84: error: expected ‘;’ before ‘*’ token
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:85: error: ISO C++ forbids declaration of ‘int_t’ with no type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:85: error: expected ‘;’ before ‘*’ token
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:87: error: ISO C++ forbids declaration of ‘int_t’ with no type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:87: error: expected ‘;’ before ‘*’ token
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:88: error: ISO C++ forbids declaration of ‘int_t’ with no type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:88: error: expected ‘;’ before ‘*’ token
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:90: error: ISO C++ forbids declaration of ‘int_t’ with no type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:90: error: expected ‘;’ before ‘*’ token
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:106: error: ‘int_t’ does not name a type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:108: error: ISO C++ forbids declaration of ‘int_t’ with no type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:108: error: expected ‘;’ before ‘*’ token
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:110: error: ISO C++ forbids declaration of ‘int_t’ with no type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:110: error: expected ‘;’ before ‘*’ token
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:112: error: ISO C++ forbids declaration of ‘int_t’ with no type
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:112: error: expected ‘;’ before ‘*’ token
/home/faisal/opensees-svn/OpenSees/OTHER/SuperLU_3.0/SRC/supermatrix.h:123: error: ‘int_t’ does not name a type
In file included from commands.cpp:228:
/home/faisal/opensees-svn/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/SuperLU.h:78: error: ‘superlu_options_t’ does not name a type
/home/faisal/opensees-svn/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/SuperLU.h:79: error: ‘SuperLUStat_t’ does not name a type
commands.cpp: In function ‘int specifySOE(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:2667: warning: unused variable ‘result’
commands.cpp: In function ‘int specifyIntegrator(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:5018: warning: unused variable ‘result’
commands.cpp: In function ‘int eigenAnalysis(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:5465: warning: unused variable ‘npRow’
commands.cpp:5466: warning: unused variable ‘npCol’
commands.cpp: In function ‘int removeObject(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:5795: warning: unused variable ‘nodTag’
commands.cpp: In function ‘int sensNodeDisp(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6506: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sensNodeVel(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6555: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sensNodeAccel(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6604: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sectionForce(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6734: warning: deprecated conversion from string constant to ‘char*’
commands.cpp:6778: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sectionDeformation(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6802: warning: deprecated conversion from string constant to ‘char*’
commands.cpp:6846: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: At global scope:
commands.cpp:2276: warning: ‘theExternalAlgorithmCommands’ defined but not used
make[2]: *** [commands.o] Error 1
make[2]: Leaving directory `/home/faisal/opensees-svn/OpenSees/SRC/tcl'
make[1]: *** [tcl] Error 2
make[1]: Leaving directory `/home/faisal/opensees-svn/OpenSees/SRC/modelbuilder/tcl'
make: *** [all] Error 2


=======================================================================================


Kindly help me to solve this problem and compile the code.
Engr. Faisal-ur-Rehman [FR]

Assistant Professor
Department of Civil Engineering
University of Engineering & Technology Peshawar Pakistan
Peshawar, Pakistan


email: faisal@uetpeshawar.edu.pk
fslurrehman@hotmail.com
Faisal
Posts: 9
Joined: Fri Nov 23, 2007 9:27 am
Location: University of Engineering & Technology Peshawar Pakistan
Contact:

Re: Compilation Error on Debian 6.02 (Squeeze)

Post by Faisal »

I was expecting a human reply not spam. I am still waiting for reply.
Engr. Faisal-ur-Rehman [FR]

Assistant Professor
Department of Civil Engineering
University of Engineering & Technology Peshawar Pakistan
Peshawar, Pakistan


email: faisal@uetpeshawar.edu.pk
fslurrehman@hotmail.com
Faisal
Posts: 9
Joined: Fri Nov 23, 2007 9:27 am
Location: University of Engineering & Technology Peshawar Pakistan
Contact:

Re: Compilation Error on Debian 6.02 (Squeeze)

Post by Faisal »

I progressed and solved above error but now stuck in new error:

LIBRARIES BUILT ... NOW LINKING OpenSees PROGRAM
make[1]: Entering directory `/home/faisal/opensees-svn/OpenSees/SRC/tcl'
make[1]: Nothing to be done for `tcl'.
make[1]: Leaving directory `/home/faisal/opensees-svn/OpenSees/SRC/tcl'
make[1]: Entering directory `/home/faisal/opensees-svn/OpenSees/SRC/modelbuilder/tcl'
make[2]: Entering directory `/home/faisal/opensees-svn/OpenSees/SRC/tcl'
make[2]: Nothing to be done for `tcl'.
make[2]: Leaving directory `/home/faisal/opensees-svn/OpenSees/SRC/tcl'
/home/faisal/lib/libOpenSees.a(ItpackLinSolver.o): In function `ItpackLinSolver::solve()':
ItpackLinSolver.cpp:(.text+0x4e): undefined reference to `dfault_'
ItpackLinSolver.cpp:(.text+0x2c4): undefined reference to `rscg_'
ItpackLinSolver.cpp:(.text+0x30c): undefined reference to `rssi_'
ItpackLinSolver.cpp:(.text+0x357): undefined reference to `jcg_'
ItpackLinSolver.cpp:(.text+0x39f): undefined reference to `jsi_'
ItpackLinSolver.cpp:(.text+0x3ef): undefined reference to `sor_'
ItpackLinSolver.cpp:(.text+0x43f): undefined reference to `ssorcg_'
ItpackLinSolver.cpp:(.text+0x48c): undefined reference to `ssorsi_'
collect2: ld returned 1 exit status
make[1]: *** [tcl] Error 1
make[1]: Leaving directory `/home/faisal/opensees-svn/OpenSees/SRC/modelbuilder/tcl'
make: *** [all] Error 2



now my Makefile.def is as following:

############################################################################
#
# Program: OpenSees
#
# Purpose: A Top-level Makefile to create the libraries needed
# to use the OpenSees framework. Works on Linux version 6.1
# and below.
#
# Written: fmk
# Created: 10/99
#
# Send bug reports, comments or suggestions to fmckenna@ce.berkeley.edu
#
############################################################################

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

OpenSees_PROGRAM = $(HOME)/bin/OpenSees

OPERATING_SYSTEM = LINUX
GRAPHICS = UsingOpenGL
#GRAPHIC_FLAG = -D_GLX #new add
PROGRAMMING_MODE = SEQUENTIAL
DEBUG_MODE = NO_DEBUG
RELIABILITY = NO_RELIABILITY


# %---------------------------------%
# | 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.

BASE = /usr/local
HOME = /home/faisal
FE = $(HOME)/opensees-svn/OpenSees/SRC

BLASdir = $(HOME)/opensees-svn/OpenSees/OTHER/BLAS
CBLASdir = $(HOME)/opensees-svn/OpenSees/OTHER/CBLAS
LAPACKdir = $(HOME)/opensees-svn/OpenSees/OTHER/LAPACK
SUPERLUdir = $(HOME)/opensees-svn/OpenSees/OTHER/SuperLU_4.1/SRC
ARPACKdir = $(HOME)/opensees-svn/OpenSees/OTHER/ARPACK
UMFPACKdir = $(HOME)/opensees-svn/OpenSees/OTHER/UMFPACK
METISdir = $(HOME)/opensees-svn/OpenSees/OTHER/METIS
AMDdir = $(HOME)/opensees-svn/OpenSees/OTHER/AMD
SRCdir = $(HOME)/opensees-svn/OpenSees/SRC


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

# %-------------------------------------------------------%
# | 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: if vendor supplied BLAS and LAPACK libraries leave the
# libraries blank. You have to get your own copy of the tcl/tk
# library!!
#
# Note: 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 jeremic@ucdavis.edu
MATMOD_LIBRARY = $(HOME)/lib/libmatmod.a # BJ_UCD jeremic@ucdavis.edu
BJMISC_LIBRARY = $(HOME)/lib/libBJmisc.a # BJ_UCD jeremic@ucdavis.edu
LAPACK_LIBRARY = $(HOME)/lib/libLapack.a
BLAS_LIBRARY = $(HOME)/lib/libBlas.a
SUPERLU_LIBRARY = $(HOME)/lib/libSuperLU.a
CBLAS_LIBRARY = $(HOME)/lib/libCBlas.a
ARPACK_LIBRARY = $(HOME)/lib/libArpack.a
UMFPACK_LIBRARY = $(HOME)/lib/libUmfpack.a
METIS_LIBRARY = $(HOME)/lib/libMetis.a
AMD_LIBRARY = $(HOME)/lib/libAMD.a
TCL_LIBRARY = /usr/lib/libtk8.5.so.0 /usr/lib/libX11.so /usr/lib/libtcl8.5.so.0
BLITZ_LIBRARY = /usr/lib/libblitz.so.0
GRAPHIC_LIBRARY = /usr/lib/libGL.so.1 /usr/lib/libX11.a /usr/lib/libXext.a /usr/lib/libGLU.so.1
#GRAPHIC_LIBRARY = -L/usr/lib -lGL -lGLU -lXft -lXrender -lXss

# WATCH OUT .. These libraries are removed when 'make wipe' is invoked.
WIPE_LIBS = $(FE_LIBRARY) \
$(LAPACK_LIBRARY) \
$(BLAS_LIBRARY) \
$(CBLAS_LIBRARY) \
$(SUPERLU_LIBRARY) \
$(ARPACK_LIBRARY) \
$(UMFPACK_LIBRARY) \
$(AMD_LIBRARY) \
$(METIS_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. |
# %---------------------------------------------------------%

# Compilers
CC++ = /usr/bin/g++
CC = /usr/bin/gcc
FC = /usr/bin/gfortran-4.4

AR = ar
ARFLAGS = cqls
RANLIB = ranlib
RANLIBFLAGS =

# Compiler Flags
#
# NOTES:
# C++ FLAGS TAKE need _UNIX or _WIN32 for preprocessor dircetives
# - the _WIN32 for the Windows95/98 or NT operating system.
# C FLAGS used -DUSE_VENDOR_BLAS (needed in SuperLU) if UNIX in C++ FLAGS
#

# modified as optimizaton currently causing problems with Steeln01 code
ifeq ($(DEBUG_MODE), DEBUG)

C++FLAGS = -Wall -D_LINUX -D_UNIX -D_TCL85 \
$(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG) \
-g -pg


CFLAGS = -Wall -pg $(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG)
FFLAGS = -Wall

# Linker
LINKER = $(CC++)
LINKFLAGS = -g -pg

else

C++FLAGS = -Wall -D_LINUX -D_UNIX -D_TCL85 \
$(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) \
$(PROGRAMMING_FLAG) -O3 -ffloat-store
CFLAGS = -Wall -O2
FFLAGS = -Wall -O

# Linker
LINKER = $(CC++)
LINKFLAGS = -rdynamic -Wl

endif


GRAPHIC_FLAG = -D_GLX

# Misc
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 command. |
# %------------------%
#
.DEFAULT:
@$(ECHO) "Unknown target $@, try: make help"
#
# %-------------------------------------------%
# | Command to build .o files from .f files. |
# %-------------------------------------------%
#

.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!! |
# %---------------------------------------------------------%
MACHINE_LINKLIBS = -L$(BASE)/lib \
-L$(HOME)/lib

MACHINE_NUMERICAL_LIBS = -lm \
$(ARPACK_LIBRARY) \
$(SUPERLU_LIBRARY) \
$(UMFPACK_LIBRARY) \
$(LAPACK_LIBRARY) $(BLAS_LIBRARY) $(CBLAS_LIBRARY) \
$(AMD_LIBRARY) \
$(GRAPHIC_LIBRARY)\
-ldl -lgfortran -lpng

MACHINE_SPECIFIC_LIBS =



# %---------------------------------------------------------%
# | SECTION 7: INCLUDE FILES |
# | |
# | The following macros specify include files needed for |
# | compilation. |
# %---------------------------------------------------------%
MACHINE_INCLUDES = -I/usr/include \
-I$(BASE)/include \
-I/usr/include/cxx \
-I$(HOME)/include -I$(HOME)/blitz
# this file contains all the OpenSees/SRC includes
include $(FE)/Makefile.incl

TCL_INCLUDES = -I/usr/include/tcl8.5 -I/usr/include/

INCLUDES = $(TCL_INCLUDES) $(FE_INCLUDES) $(MACHINE_INCLUDES)
Engr. Faisal-ur-Rehman [FR]

Assistant Professor
Department of Civil Engineering
University of Engineering & Technology Peshawar Pakistan
Peshawar, Pakistan


email: faisal@uetpeshawar.edu.pk
fslurrehman@hotmail.com
hsafti
Posts: 68
Joined: Thu Apr 22, 2010 5:38 am
Location: Braunschweig

Re: Compilation Error on Debian 6.02 (Squeeze)

Post by hsafti »

Please share the Makefile.def if you were able to build it (and list needed libraries please). The forum here seems to have something against Linux builds :(

Try this Makefile.def
https://docs.google.com/document/d/18ll ... y=CMfcybIK

The problem for me regarding the latest version is to build the SuperLU4.0 library

Also, have you tried parallel build???
Hisham El Safti
Faisal
Posts: 9
Joined: Fri Nov 23, 2007 9:27 am
Location: University of Engineering & Technology Peshawar Pakistan
Contact:

Re: Compilation Error on Debian 6.02 (Squeeze)

Post by Faisal »

@hsafti: No luck yet :roll: I have tried your Makefile.def and all available Makefile.def files. I also incorporated the best options/commands from these in my own Makefile.def but all in vain. I think that current OpenSees code is not tested with linux.

I haven't tried parallel build. I have used libraries listed on http://opensees.berkeley.edu/community/ ... =6&t=13384.

Have you tried SUPERLUdir = $(HOME)/OpenSees/OTHER/SuperLU_4.1/SRC in section 2: Paths and -I$(SUPERLUdir) in MACHINE_INCLUDES in SECTION 7: INCLUDE FILES

Still getting above error:

-I/home/faisal/OpenSees/SRC/optimization/SNOPT -I/home/faisal/OpenSees/SRC/reliability/FEsensitivity -I/home/faisal/OpenSees/SRC/reliability/tcl -I/home/faisal/OpenSees/SRC/unittest -I/home/faisal/OpenSees/SRC/api -I/home/faisal/OpenSees/SRC -I/home/faisal/OpenSees/OTHER/SuperLU_4.1/SRC -I/home/faisal/OpenSees/SRC/package -I/home/faisal/OpenSees/SRC/../OTHER/AMD -I/usr/include -I/usr/local/include -I/usr/include/c++/4.4 -I/usr/include/GL -I/home/faisal/include -I/home/faisal/blitz -I/home/faisal/OpenSees/OTHER/UMFPACK -I/home/faisal/OpenSees/OTHER/SuperLU_4.1/SRC -c TclModelBuilderDamageModelCommand.cpp -o TclModelBuilderDamageModelCommand.o
make[3]: Entering directory `/home/faisal/OpenSees/SRC/recorder/response'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/home/faisal/OpenSees/SRC/recorder/response'
make[2]: Leaving directory `/home/faisal/OpenSees/SRC/damage'
make[2]: Entering directory `/home/faisal/OpenSees/SRC/api'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/faisal/OpenSees/SRC/api'
make[1]: Leaving directory `/home/faisal/OpenSees/SRC'
make[1]: Entering directory `/home/faisal/OpenSees/OTHER/METIS'
make[1]: Leaving directory `/home/faisal/OpenSees/OTHER/METIS'
LIBRARIES BUILT ... NOW LINKING OpenSees PROGRAM
make[1]: Entering directory `/home/faisal/OpenSees/SRC/tcl'
make[1]: Nothing to be done for `tcl'.
make[1]: Leaving directory `/home/faisal/OpenSees/SRC/tcl'
make[1]: Entering directory `/home/faisal/OpenSees/SRC/modelbuilder/tcl'
make[2]: Entering directory `/home/faisal/OpenSees/SRC/tcl'
make[2]: Nothing to be done for `tcl'.
make[2]: Leaving directory `/home/faisal/OpenSees/SRC/tcl'
/home/faisal/lib/libOpenSees.a(ItpackLinSolver.o): In function `ItpackLinSolver::solve()':
ItpackLinSolver.cpp:(.text+0xad5): undefined reference to `dfault_'
ItpackLinSolver.cpp:(.text+0xd55): undefined reference to `jcg_'
ItpackLinSolver.cpp:(.text+0xde2): undefined reference to `jsi_'
ItpackLinSolver.cpp:(.text+0xe6f): undefined reference to `sor_'
ItpackLinSolver.cpp:(.text+0xefc): undefined reference to `ssorcg_'
ItpackLinSolver.cpp:(.text+0xf89): undefined reference to `ssorsi_'
ItpackLinSolver.cpp:(.text+0x1016): undefined reference to `rscg_'
ItpackLinSolver.cpp:(.text+0x10a3): undefined reference to `rssi_'
collect2: ld returned 1 exit status
make[1]: *** [tcl] Error 1
make[1]: Leaving directory `/home/faisal/OpenSees/SRC/modelbuilder/tcl'
make: *** [all] Error 2

Once I compiled successfully in ubuntu 9.04 and thought this time that it would be as easy as before but this time I spent 2 weeks with no luck.
If anyone compile successfully on latest linux distro or understand above listed error then please share.
Thanks
Engr. Faisal-ur-Rehman [FR]

Assistant Professor
Department of Civil Engineering
University of Engineering & Technology Peshawar Pakistan
Peshawar, Pakistan


email: faisal@uetpeshawar.edu.pk
fslurrehman@hotmail.com
Faisal
Posts: 9
Joined: Fri Nov 23, 2007 9:27 am
Location: University of Engineering & Technology Peshawar Pakistan
Contact:

Re: Compilation Error on Debian 6.02 (Squeeze)

Post by Faisal »

my updated Makefile.def is given below. I am getting above error. If someone can help then do reply:

############################################################################
#
# Program: OpenSees
#
# Purpose: A Top-level Makefile to create the libraries needed
# to use the OpenSees framework. Works on Linux version 6.1
# and below.
#
# Written: fmk
# Created: 10/99
#
# Send bug reports, comments or suggestions to fmckenna@ce.berkeley.edu
#
############################################################################

# %---------------------------------%
# | SECTION 1: PROGRAM |
# %---------------------------------%
#
# Specify the location and name of the OpenSees interpreter program
# that will be created (if this all works!)
#compiled on squeeze 6.02 amd 64bit laptop
#pre-requisetes:
#gcc-4.4
#g++-4.4
#gfortran - note its full name in my /usr/bin is gfortran-4.4
#tcl8.5
#tcl
#tk8.5
#tcl8.5-dev
#tk8.5-dev
#libglu1-mesa-dev
#
#also following files must be installed as listed on http://opensees.berkeley.edu/community/ ... =6&t=13384:
#sudo aptitude -y install build-essential gfortran gfortran-4.3 libatk1.0-dev libcairo2-dev libdirectfb-dev libdirectfb-extra libexpat1-dev libfontconfig1-dev #libfreetype6-dev libgfortran3 libgl1-mesa-dev libglu1-mesa libglu1-mesa-dev libgtk2.0-dev libice-dev libjpeg62-dev libpango1.0-dev libpixman-1-dev libpng12-dev #libpthread-stubs0 libpthread-stubs0-dev libsm-dev libsysfs-dev libx11-dev libxau-dev libxcb1-dev libxcb-render0-dev libxcb-render-util0-dev libxcomposite-dev #libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxft-dev libxi-dev libxinerama-dev libxrandr-dev libxrender-dev libxss-dev mesa-common-dev #tcl8.5 tcl8.5-dev tcllib tk8.5 tk8.5-dev x11proto-composite-dev x11proto-core-dev x11proto-damage-dev x11proto-fixes-dev x11proto-input-dev x11proto-kb-dev #x11proto-randr-dev x11proto-render-dev x11proto-scrnsaver-dev x11proto-xext-dev x11proto-xinerama-dev xtrans-dev zlib1g-dev
#also read the make file and correct the path and name of libraries provided. I my case most libraries are in /usr/bin and ending with so.1 or so.0

OpenSees_PROGRAM = $(HOME)/bin/OpenSees

OPERATING_SYSTEM = LINUX
GRAPHICS = UsingOpenGL
PROGRAMMING_MODE = SEQUENTIAL
DEBUG_MODE = NO_DEBUG
RELIABILITY = NO_RELIABILITY


# %---------------------------------%
# | 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.

BASE = /usr/local
HOME = /home/faisal
FE = $(HOME)/OpenSees/SRC

BLASdir = $(HOME)/OpenSees/OTHER/BLAS
CBLASdir = $(HOME)/OpenSees/OTHER/CBLAS
LAPACKdir = $(HOME)/OpenSees/OTHER/LAPACK
SUPERLUdir = $(HOME)/OpenSees/OTHER/SuperLU_4.1/SRC
ARPACKdir = $(HOME)/OpenSees/OTHER/ARPACK
UMFPACKdir = $(HOME)/OpenSees/OTHER/UMFPACK
METISdir = $(HOME)/OpenSees/OTHER/METIS
AMDdir = $(HOME)/OpenSees/OTHER/AMD
SRCdir = $(HOME)/OpenSees/SRC


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


# %-------------------------------------------------------%
# | 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: if vendor supplied BLAS and LAPACK libraries leave the
# libraries blank. You have to get your own copy of the tcl/tk
# library!!
#
# Note: 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 jeremic@ucdavis.edu
MATMOD_LIBRARY = $(HOME)/lib/libmatmod.a # BJ_UCD jeremic@ucdavis.edu
BJMISC_LIBRARY = $(HOME)/lib/libBJmisc.a # BJ_UCD jeremic@ucdavis.edu
LAPACK_LIBRARY = $(HOME)/lib/libLapack.a
BLAS_LIBRARY = $(HOME)/lib/libBlas.a
SUPERLU_LIBRARY = $(HOME)/lib/libSuperLU.a
CBLAS_LIBRARY = $(HOME)/lib/libCBlas.a
ARPACK_LIBRARY = $(HOME)/lib/libArpack.a
UMFPACK_LIBRARY = $(HOME)/lib/libUmfpack.a
METIS_LIBRARY = $(HOME)/lib/libMetis.a
AMD_LIBRARY = $(HOME)/lib/libAMD.a
TCL_LIBRARY = /usr/lib/libtk8.5.so /usr/lib/libX11.so /usr/lib/libtcl8.5.so
BLITZ_LIBRARY = /usr/lib/libblitz.so.0
#GRAPHIC_LIBRARY = /usr/lib/libGL.so.1 /usr/lib/libX11.a /usr/lib/libXext.a /usr/lib/libGLU.so.1
#GRAPHIC_LIBRARY = -L/usr/lib -lGL -lGLU -lXft -lXrender -lXss

ifeq ($(GRAPHICS), UsingX11)
GRAPHIC_LIBRARY = -L/usr/lib/libX11.so
else
GRAPHIC_LIBRARY = -L/usr/lib -lX11 -lGL -lGLU
endif


# WATCH OUT .. These libraries are removed when 'make wipe' is invoked.
WIPE_LIBS = $(FE_LIBRARY) \
$(LAPACK_LIBRARY) \
$(BLAS_LIBRARY) \
$(CBLAS_LIBRARY) \
$(SUPERLU_LIBRARY) \
$(ARPACK_LIBRARY) \
$(UMFPACK_LIBRARY) \
$(AMD_LIBRARY) \
$(METIS_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. |
# %---------------------------------------------------------%

# Compilers
CC++ = /usr/bin/g++ # it is g++-4.4
CC = /usr/bin/gcc # it is gcc-4.4
FC = /usr/bin/gfortran-4.4

AR = ar
ARFLAGS = cqls
RANLIB = ranlib
RANLIBFLAGS =

# Compiler Flags
#
# NOTES:
# C++ FLAGS TAKE need _UNIX or _WIN32 for preprocessor dircetives
# - the _WIN32 for the Windows95/98 or NT operating system.
# C FLAGS used -DUSE_VENDOR_BLAS (needed in SuperLU) if UNIX in C++ FLAGS
#

# modified as optimizaton currently causing problems with Steeln01 code

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

ifeq ($(DEBUG_MODE), DEBUG)
DEBUG_FLAG = -D_G3DEBUG
else
DEBUG_FLAG =
endif


ifeq ($(DEBUG_MODE), DEBUG)

C++FLAGS = -Wall -D_LINUX -D_UNIX -D_TCL85 \
$(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG) \
-g -pg


CFLAGS = -Wall -pg $(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG)
FFLAGS = -Wall

# Linker
LINKER = $(CC++)
LINKFLAGS = -g -pg

else


C++FLAGS = -Wall -D_LINUX -D_UNIX -D_TCL85 \
$(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) \
$(PROGRAMMING_FLAG) -O3 -ffloat-store #-funroll-loops -fcse-follow-jumps \
# -fthread-jumps -fcse-skip-blocks -frerun-cse-after-loop \
# -felide-constructors \
# -fcaller-saves -ffloat-store -fforce-addr \
# -fschedule-insns -fschedule-insns2 \
# -fexpensive-optimizations \
# -fforce-addr -finline-functions \
# -fkeep-inline-functions \
# -fno-function-cse -fno-inline -fno-peephole \
# -fomit-frame-pointer \
# -fstrength-reduce \
# -D__CORRECT_ISO_CPP_STRINGS_H_PROTO

CFLAGS = -Wall -O2 #$(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG)
FFLAGS = -Wall -O

# Linker
LINKER = $(CC++)
LINKFLAGS = -rdynamic -Wl

endif


GRAPHIC_FLAG = -D_GLX

# Misc
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 command. |
# %------------------%
#
.DEFAULT:
@$(ECHO) "Unknown target $@, try: make help"
#
# %-------------------------------------------%
# | Command to build .o files from .f files. |
# %-------------------------------------------%
#

.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 $@
.f77.o:
@$(ECHO) Making $@ from $<
$(FC) $(FFLAGS) -c $< -o $@

.f90.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!! |
# %---------------------------------------------------------%
MACHINE_LINKLIBS = -L$(BASE)/lib \
-L$(HOME)/lib

MACHINE_NUMERICAL_LIBS = -lm \
$(ARPACK_LIBRARY) \
$(SUPERLU_LIBRARY) \
$(UMFPACK_LIBRARY) \
$(LAPACK_LIBRARY) $(BLAS_LIBRARY) $(CBLAS_LIBRARY) \
$(GRAPHIC_LIBRARY)\
$(AMD_LIBRARY) \
-ldl -lgfortran -lpng


#MACHINE_SPECIFIC_LIBS =
#ifeq ($(PROGRAMMING_MODE), THREADS)
#MACHINE_SPECIFIC_LIBS = -lpthread
#else
#MACHINE_SPECIFIC_LIBS = -ldl -lieee -lm -lc -Wl,-rpath,/usr/local/lib
#endif
MACHINE_SPECIFIC_LIBS =

# %---------------------------------------------------------%
# | SECTION 7: INCLUDE FILES |
# | |
# | The following macros specify include files needed for |
# | compilation. |
# %---------------------------------------------------------%
MACHINE_INCLUDES = -I/usr/include \
-I$(BASE)/include \
-I/usr/include/c++/4.4 \
-I/usr/include/GL \
-I$(HOME)/include -I$(HOME)/blitz -I$(UMFPACKdir) -I$(SUPERLUdir)
# this file contains all the OpenSees/SRC includes
include $(FE)/Makefile.incl

TCL_INCLUDES = -I/usr/include/tcl8.5 -I/usr/include/

INCLUDES = $(TCL_INCLUDES) $(FE_INCLUDES) $(MACHINE_INCLUDES)
Engr. Faisal-ur-Rehman [FR]

Assistant Professor
Department of Civil Engineering
University of Engineering & Technology Peshawar Pakistan
Peshawar, Pakistan


email: faisal@uetpeshawar.edu.pk
fslurrehman@hotmail.com
hsafti
Posts: 68
Joined: Thu Apr 22, 2010 5:38 am
Location: Braunschweig

Re: Compilation Error on Debian 6.02 (Squeeze)

Post by hsafti »

That file actually works for Ubuntu 10.10 .... for sequential OpenSees only though.

I'm not familiar with the Makefile utility. OpenSees was my first encounter with it.

I know that OpenSees is built for various Linux clusters in CA. Nevertheless, the OpenSees team does not share clear instructions on Linux builds.

On more than one occasion, I have suggested implementing OpenSees in a cmake (or wmake) or even as an eclipse IDE project or via codeBlocks.

OpenSees has been a very frustrating experience for me. Besides Linux build issue, OpenSees does not deliver what is promised in the manual (geotechnical part-wise) and the OpenSees team (which I think consists of Dr McKenna period) was not helpful with my posts or emails.

I appreciate OpenSees and all the work done. But I guess OpenSees is extremely poor regards community. If you do not have direct contact with Berkeley, I think you should have a plan B for your project.
Hisham El Safti
sb1966
Posts: 151
Joined: Wed Jul 23, 2008 8:08 am
Location: NERIST, INDIA
Contact:

Re: Compilation Error on Debian 6.02 (Squeeze)

Post by sb1966 »

Dear all

It is not a solution of the problem (Pl excuse me), but sharing of some ideas.
I faced similar problem with Fedora 14 (64 bit). Alisa has a solution posted in this forum. However, I have moved to CAELinux by this time. I believe there is some gcc compatibility issue involved.

Reg the help from forum, yes I agree that sometimes it is really frustrating to wait and wait. But I still believe that OS community is a great one and helps each other, whenever possible. I have got a lot of helps, particularly from fmk and vesna in the past.

Reg moving to cmake or eclipse is a nice proposal. I am not sufficiently expert to do the same. Hope some one will take up the job. Further, OS really needs a GUI for increasing the user base, May be something like BuildingTcl, without giving up the powerful scripting option completely. OS developers collect data on user needs, but I am yet to see any thing on this line.

Thanks and Regards.
----------------------------------
With Regards,
sb1966
Post Reply