Compiling Error in Fedora 14, 64 bit

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

Moderators: silvia, selimgunay, Moderators

sb1966
Posts: 151
Joined: Wed Jul 23, 2008 8:08 am
Location: NERIST, INDIA
Contact:

Compiling Error in Fedora 14, 64 bit

Post by sb1966 »

Dear fmk,
While I was trying to compile OS (latest svn : revision 4541) in Fedora 14, I got the following error message.

......X11 -I/usr/include/GL -I/usr/include/c++ -I/usr/include/blitz -c commands.cpp -o commands.o
In file included from commands.cpp:223:0:
/usr/local/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/SuperLU.h:48:23: fatal error: slu_ddefs.h: No such file or directory
compilation terminated.
make[2]: *** [commands.o] Error 1
make[2]: Leaving directory `/usr/local/OpenSees/SRC/tcl'
make[1]: *** [tcl] Error 2
make[1]: Leaving directory `/usr/local/OpenSees/SRC/modelbuilder/tcl'


Pl help.
Thank you.
----------------------------------
With Regards,
sb1966
sb1966
Posts: 151
Joined: Wed Jul 23, 2008 8:08 am
Location: NERIST, INDIA
Contact:

Re: Compiling Error in Fedora 14, 64 bit

Post by sb1966 »

Dear fmk and All

I tried to fix the Makefile.def where I changed the superLU Directory as
SUPERLUdir = $(HOME)/OpenSees/OTHER/SuperLU_4.1/SRC

This time make was giving me the following output:

make[1]: Leaving directory `/usr/local/OpenSees/OTHER/AMD'
LIBRARIES BUILT ... NOW LINKING OpenSees PROGRAM
make[1]: Entering directory `/usr/local/OpenSees/SRC/tcl'
make[1]: Nothing to be done for `tcl'.
make[1]: Leaving directory `/usr/local/OpenSees/SRC/tcl'
make[1]: Entering directory `/usr/local/OpenSees/SRC/modelbuilder/tcl'
make[2]: Entering directory `/usr/local/OpenSees/SRC/tcl'
make[2]: Nothing to be done for `tcl'.
make[2]: Leaving directory `/usr/local/OpenSees/SRC/tcl'
c++: /usr/local/lib/libOpenSees.a: No such file or directory
make[1]: *** [tcl] Error 1
make[1]: Leaving directory `/usr/local/OpenSees/SRC/modelbuilder/tcl'
make: *** [all] Error 2

After this I tried to make in /usr/local/OpenSees/SRC and got the following error:
===================================================================
ContactMaterial2D.cpp: In function ‘void* OPS_NewContactMaterial2DMaterial()’:
ContactMaterial2D.cpp:54:116: warning: deprecated conversion from string constant to ‘char*’
ContactMaterial2D.cpp: In constructor ‘ContactMaterial2D::ContactMaterial2D()’:
ContactMaterial2D.cpp:114:68: error: cannot call constructor ‘ContactMaterial2D::ContactMaterial2D’ directly
ContactMaterial2D.cpp:114:68: error: for a function-style cast, remove the redundant ‘::ContactMaterial2D’
make[2]: *** [ContactMaterial2D.o] Error 1
make[2]: Leaving directory `/usr/local/OpenSees/SRC/material/nD'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/usr/local/OpenSees/SRC/material'

Would some of you please help?

Thanks in advance

I am also posting my Makefile.def

==================
############################################################################
#
# 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
# Modified:sukumar for Fedora 14 x86_64
# Date: 05/2011
#
# 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
GRAPHICS = UsingX11
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
BASE = /usr
#HOME = /home/sukumar
HOME = /usr/local
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
SRCdir = $(HOME)/OpenSees/SRC
AMDdir = $(HOME)/OpenSees/OTHER/AMD


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

# %-------------------------------------------------------%
# | 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/lib64/libtk8.5.so /usr/lib64/libtcl8.5.so #/usr/lib/libXm.so.4
#BLITZ_LIBRARY = /usr/local/blitz-0.9/lib/libblitz.la
BLITZ_LIBRARY = /usr/lib64/libblitz.so
#GRAPHIC_LIBRARY = /usr/lib64/libGL.so /usr/lib64/libGLU.so
GRAPHIC_LIBRARY = /usr/lib64/libX11.so /usr/lib64/libX11.so.6 /usr/lib64/libX11.so.6.3.0

# 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) \
$(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/c++
CC = /usr/bin/cc
FC = /usr/bin/gfortran


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
GRAPHIC_FLAG = -D_X11

# 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) \
$(GRAPHIC_LIBRARY)\
$(AMD_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
MACHINE_INCLUDES = -I/usr/include \
-I$(BASE)/include \
-I/usr/include/X11 \
-I/usr/include/GL \
-I/usr/include/c++ \
-I/usr/include/blitz # -I/usr/local/blitz

# this file contains all the OpenSees/SRC includes
include $(FE)/Makefile.incl

TCL_INCLUDES = /usr/include/tcl-private

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

Re: Compiling Error in Fedora 14, 64 bit

Post by fmk »

cd to OpenSees/SRC and type make and tell me what errors you get.
sb1966
Posts: 151
Joined: Wed Jul 23, 2008 8:08 am
Location: NERIST, INDIA
Contact:

Re: Compiling Error in Fedora 14, 64 bit

Post by sb1966 »

Dear fmk,

Thanks a lot for your reply. I was eagerly waiting for it. The following is the output after making in /.../OpenSees/SRC



ContactMaterial2D.cpp: In function ‘void* OPS_NewContactMaterial2DMaterial()’:
ContactMaterial2D.cpp:54:116: warning: deprecated conversion from string constant to ‘char*’
ContactMaterial2D.cpp: In constructor ‘ContactMaterial2D::ContactMaterial2D()’:
ContactMaterial2D.cpp:114:68: error: cannot call constructor ‘ContactMaterial2D::ContactMaterial2D’ directly
ContactMaterial2D.cpp:114:68: error: for a function-style cast, remove the redundant ‘::ContactMaterial2D’
make: *** [ContactMaterial2D.o] Error 1

Thanks and regards
----------------------------------
With Regards,
sb1966
sb1966
Posts: 151
Joined: Wed Jul 23, 2008 8:08 am
Location: NERIST, INDIA
Contact:

Re: Compiling Error in Fedora 14, 64 bit

Post by sb1966 »

further, my gcc is 4.5.1 with backward compatibilty of gcc 3.4.6

Regards
----------------------------------
With Regards,
sb1966
sb1966
Posts: 151
Joined: Wed Jul 23, 2008 8:08 am
Location: NERIST, INDIA
Contact:

Re: Compiling Error in Fedora 14, 64 bit

Post by sb1966 »

Dear fmk and all,
May I know where the problem lies and how to sort it out? sorting it out is important to complete some urgent projects at my hand. So pl. help me. Thanks a lot for your help all the way.
----------------------------------
With Regards,
sb1966
A N
Posts: 3
Joined: Mon Oct 11, 2010 3:50 am
Location: SUNY at Buffalo
Contact:

Re: Compiling Error in Fedora 14, 64 bit

Post by A N »

I started from Makefile.def.RANGER and had the same problem
catastrophic error: could not open source file slu_ddefs.h

I ended up hardcoding the path in the last line of the makefile:

INCLUDES = $(MACHINE_INCLUDES) $(TCL_INCLUDES) $(FE_INCLUDES) \
-I/util/opensees/src/OpenSees/OTHER/SuperLU_4.1/SRC/

Not the best solution, but a solution at least
alisa
sb1966
Posts: 151
Joined: Wed Jul 23, 2008 8:08 am
Location: NERIST, INDIA
Contact:

Re: Compiling Error in Fedora 14, 64 bit

Post by sb1966 »

Dear Alisa,
If you have successfully compiled in Fedora 14, 64 bit, would you pl. paste your Makefile.def?

Thanks and Regards
----------------------------------
With Regards,
sb1966
aneeman
Posts: 90
Joined: Thu Jan 12, 2006 1:13 pm
Contact:

Re: Compiling Error in Fedora 14, 64 bit

Post by aneeman »

Sorry, after that bug I was having other errors around the SLU solver code. But if I get a clean compile, I will definately post!!
aneeman
Posts: 90
Joined: Thu Jan 12, 2006 1:13 pm
Contact:

Re: Compiling Error in Fedora 14, 64 bit

Post by aneeman »

This was the help I got from Frank:

"i put in a new version of the distributed superlu .. SuperLU_DIST_2.5
.. does the Makefile.def point to this one."

So I changed Makefile.def to say

SUPERLUdir = $(HOME)/OpenSees/OTHER/SuperLU_3.0/SRC
SUPERLU_DISTdir = $(HOME)/OpenSees/OTHER/SuperLU_DIST_2.5/SRC


DISTRIBUTED_SUPERLU_LIBRARY = $(HOME)/lib/libDistributedSuperLU.a
$(FE)/system_of_eqn/linearSOE/sparseGEN/DistributedSuperLU.o \
$(FE)/system_of_eqn/linearSOE/sparseGEN/SuperLU.o \
$(FE)/system_of_eqn/linearSOE/sparseGEN/DistributedSuperLU.o \
-I$(HOME).../OTHER/SuperLU_4.1/SRC/ \
-I/util/opensees/src/OpenSees/OTHER/SuperLU_3.0/SRC/ \
-I/util/opensees/src/OpenSees/OTHER/SuperLU_DIST_2.5/SRC/ \
-I/util/opensees/src/OpenSees/OTHER/SuperLU_4.1/SRC

That seems to have fixed that problem (perhaps with overkill).
nancykhan47
Posts: 1
Joined: Thu Aug 04, 2011 1:25 am

Re: Compiling Error in Fedora 14, 64 bit

Post by nancykhan47 »

This is the same error with my system.
Now it is fixed. I just changed the location and there was no error!
GrupoDSP
Posts: 2
Joined: Mon Aug 08, 2011 1:41 pm

Re: Compiling Error in Fedora 14, 64 bit

Post by GrupoDSP »

Where was the mistake in the directory path?
http:/www.grupodsp.com
andya7658
Posts: 1
Joined: Mon Sep 05, 2011 6:08 am

Re: Compiling Error in Fedora 14, 64 bit

Post by andya7658 »

Can you tell me about Fedora's latest version? I am running Fedora 14 and it is okay with my system.
Thanks
arnob2sarkar
Posts: 1
Joined: Sat Mar 03, 2012 9:12 pm

Re: Compiling Error in Fedora 14, 64 bit

Post by arnob2sarkar »

Any organisation can benefit from implementing ISO 9001:2008 as its requirements are underpinned by eight management principles:

* a customer focused organization
* leadership
* the involvement of people
* ensuring a process approach
ISO 9001
savannaharties
Posts: 1
Joined: Sun Jul 22, 2012 3:24 pm

Re: Compiling Error in Fedora 14, 64 bit

Post by savannaharties »

Perhaps this is solved through Fedora's latest versions and through many updates released.
Post Reply