Dies ist eine statische Kopie unseres alten Forums. Es sind keine Interaktionen möglich.
This is a static copy of our old forum. Interactions are not possible.

fGrünschnabel

Praktikant

  • "fGrünschnabel" started this thread

Posts: 6

Date of registration: Aug 4th 2009

1

Tuesday, August 4th 2009, 7:58pm

Fortran-Program kompilieren

Hallo Leute,

ich habe ein riesiges Problem und hoffe, dass sich hier ein Leute finden, die sich damit besser auskennen als ich. Und das dürfte in einem Informatiker Forum nicht schwer sein. :-)

Kurz zu meiner Person: Ich bin leider kein Informatiker, sondern ein Maschienebauer und kenne mich nur hobbymäßig mit der Materie aus.

Leider soll ich jetzt in meinem Institut ein Program auf deren Server aufspielen, dass in Fortran77 geschrieben ist.
Das Program heißt MISES und ist ein numerischer Strömungssimulator.
Es besteht aus zwei Teilprogrammen: Eine X11 Bibliothek und das eigentliche Program. Beide haben eine eigenen Makefile und genau da liegt jetzt mein Problem.
Ich weiß nämlich nicht, wie ich diese Makefile "konfigurieren" soll bzw kann ich nicht die alte, lauffähige Makefile auf das aktuelle System übertragen.
Alt und lauffähig deshalb, weil das Program vorher auf einem Sun System lief bis der alte Server den Geist aufgegeben hat.

Ich stelle mal die Makefile rein, die auf dem Sun-System lief. So wie ich das verstehe müsste ich eigentlich nur die Einstellungen des f77-Compilers auf den neuen Compiler anpassen. Mir stehen als Fortran Compiler ifort und gfortran zur Verfügung. Als C-Compiler gcc.

So nun die Makefile von der X11 Bibliothek:


Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
#***********************************************************************
# Module: Makefile
# 
# Copyright (C) 1996 Harold Youngren, Mark Drela 
# 
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Library General Public
# License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Library General Public License for more details.
#
# You should have received a copy of the GNU Library General Public
# License along with this library; if not, write to the Free
# Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
# 
# Report problems to: guppy@netcom.com 
# or drela@henry.mit.edu 
#***********************************************************************



#################################
# makefile for Xplot11 library #
#################################

#point to your install directory
#INSTALLDIR= $(HOME)/lib
#INSTALLDIR= /usr/local/lib
INSTALLDIR= .

#PLTLIB = libPlt.a 
PLTLIB = libPltDP.a 
LINKLIB = -L/usr/X/lib -lX11 

###========================================================
### Basic plot library object files
OBJ = plt_base.o plt_font.o plt_util.o plt_color.o \
set_subs.o gw_subs.o ps_subs.o Xwin.o
OBJ3D =
OBJOLD =

###--------------------------------------------------------
### Uncomment to add the old plot compatibility routines
#OBJOLD = plt_old.o

###--------------------------------------------------------
### Uncomment to add the 3D-view routines
#OBJ3D = plt_3D.o


###====================================
### Default compilers and flags, install commands
F77 = /opt/SUNWspro61/SUNWspro/bin/f77
CC = /opt/SUNWspro61/SUNWspro/bin/cc -lsunmath -lm
DP =
FFLAGS = -O $(DP) -64
CFLAGS = -O -64
AR = ar r 
RANLIB = ar qs 

###------------------------------------
### Uncomment for Linux, using the script f77 (unusable in Slackware 3.0) 
### (use corrected f77 driver script) or g77, the GNU F77 compiler
#F77 = g77 
#CC = gcc
### Uncomment to make double-precision version
#DP = -r8
#FFLAGS = -O2 $(DP)
#CFLAGS = -O2
#AR = ar r
#RANLIB = ranlib 

###------------------------------------
### Uncomment for DEC OSF/Alpha
#DP = -r8
#
#CFLAGS = -O4 -float 
#FFLAGS = -O4 $(DP)

###------------------------------------
### Uncomment for RS/6000
#DP = -qautodbl=dblpad4
#
#FFLAGS = -O -qextname -qfixed $(DP)

###------------------------------------
### Uncomment for Sun Open-Windows 
### (give location of X11/xxx.h include files)
#CFLAGS = -O -I/usr/openwin/share/include
### Uncomment to make double-precision version
#DP = -r8
#FFLAGS = -O $(DP)

###------------------------------------
### Uncomment for HP-9000
### (use ANSI-C standard, use underscored C-routine names)
#DP = -r8
#
#CFLAGS = -O -Aa
#FFLAGS = -O +ppu $(DP)



$(PLTLIB): $(OBJ) $(OBJOLD) $(OBJ3D)
$(AR) $(PLTLIB) $(OBJ) $(OBJOLD) $(OBJ3D)
$(RANLIB) $(PLTLIB)

test: $(PLTLIB)
(cd examples; make test)

install: $(PLTLIB)
mv $(PLTLIB) $(INSTALLDIR)
$(RANLIB) $(INSTALLDIR)/$(PLTLIB)

clean:
-/bin/rm *.o
-/bin/rm *.a
-/bin/rm plot*.ps
(cd examples; make clean)

#plot package routines

plt_base.o: plt_base.f pltlib.inc
$(F77) -c $(FFLAGS) plt_base.f

plt_color.o: plt_color.f pltlib.inc
$(F77) -c $(FFLAGS) plt_color.f

plt_font.o: plt_font.f CHAR.INC SLAN.INC MATH.INC SYMB.INC
$(F77) -c $(FFLAGS) plt_font.f

plt_util.o: plt_util.f
$(F77) -c $(FFLAGS) plt_util.f

plt_3D.o: plt_3D.f
$(F77) -c $(FFLAGS) plt_3D.f

plt_old.o: plt_old.f pltlib.inc
$(F77) -c $(FFLAGS) plt_old.f

set_subs.o: set_subs.f pltlib.inc
$(F77) -c $(FFLAGS) set_subs.f

gw_subs.o: gw_subs.f pltlib.inc
$(F77) -c $(FFLAGS) gw_subs.f

ps_subs.o: ps_subs.f pltlib.inc
$(F77) -c $(FFLAGS) ps_subs.f

Xwin.o: Xwin.c
$(CC) -c $(CFLAGS) Xwin.c


#May need to specify these on a brain-dead make system
#.f.o: $(F77) -c $(FFLAGS) $<
#.c.o: $(CC) -c $(CFLAGS) $<

fGrünschnabel

Praktikant

  • "fGrünschnabel" started this thread

Posts: 6

Date of registration: Aug 4th 2009

2

Tuesday, August 4th 2009, 7:59pm

Und hier die Makefile vom MISES Program selbst:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
#
# Makefile for MISES Version 2.4 
# (makes all programs)
#

EDP = ../src/edp
IPLOT = ../src/iplot
IPRINT = ../src/iprint
ISES = ../src/ises
ISET = ../src/iset

PNSRC = ../src/panel
BLSRC = ../src/bl
IOSRC = ../src/io
UTSRC = ../src/util
PLSRC = ../src/plot
BLDSRC = ../src/bldset
PPSRC = ../src/polpl

GEOSRC = ../src/geo
#GEOSRC = ../src/abbgeo

##===========================
# Set to plot library source 
# (single or double precision), also location

# Local to MISES package
PLTLIB = ../plotlib/libPltDP.a
###PLTLIB = ../plotlib/libPlt.a

# For compiled library somewhere on system
#PLTLIB = -lPltDP
#PLTLIB = -lPlt

f77 = /opt/SUNWspro61/SUNWspro/bin/f77
cc = /opt/SUNWspro61/SUNWspro/bin/cc -lsunmath -lm


LNOBJ =

INC = ../src/INC

INDEXdir = ../src/bl

DEBUG = ../src/debug

##===========================
## Default compiler flags
FLG = -O 
FLG1 = -O 
FLGOPT = -O 

##--------------------------
## Uncomment for OSF/Alpha
#FLG = -O2
#FLG1 = -O0
#FLGOPT = -O5 -fast -tune ev4 -unroll 3

##--------------------------
## Uncomment for RS/6000
#FLG = -O -qextname
#FLG1 = -O -qextname
#FLGOPT = -O -qextname

##--------------------------
## Uncomment for HP-9000
#FLG = -O +ppu
#FLG1 = -O +ppu
#FLGOPT = -O +ppu

##--------------------------

#==================================================================
# Option-selection section.
#
# Uncomment VARIABLE to enable the option described.
#
#------------------------------------------------------------------
# Linearization checking in mses.f, using linchk* routines
# (must also built libPlt.a with -r8 )
# FLG = -O1 -r8
# FLG1 = -O1 -r8
# FLGOPT = -O1 -r8
# LNOBJ = linchk.o

#------------------------------------------------------------------
# Device-independent i/o with iolib library
# IOOBJ = iol.o
# SNOBJ = sensiol.o
# LIO = -lio

#------------------------------------------------------------------
# Double-precision for all programs
# (must also built libPlt.a with -r8 )
# FLG = -O1 -r8
# FLG1 = -O1 -r8
# FLGOPT = -O2 -r8
#==================================================================


BLOBJ = mrchbl.o blsys.o bldif.o blvar.o blfun.o bltrn.o 

ISESOBJ = ises.o isesinit.o setbc.o nucalc.o setbl.o setup.o solve.o \
update.o globit.o glosen.o gmodes.o mixout.o smove.o \
picalc.o rbcalc.o area.o io.o \
lefind.o spline.o gaussn.o \
userio.o \
bpario.o bldgen.o bpcon.o \
blvarx.o $(BLOBJ) \
$(LNOBJ)

POLAROBJ = polar.o isesinit.o setbc.o nucalc.o setbl.o setup.o solve.o \
update.o globit.o glosen.o gmodes.o mixout.o smove.o \
picalc.o rbcalc.o area.o io.o \
lefind.o spline.o gaussn.o \
userio.o iopol.o \
bpario.o bldgen.o bpcon.o \
blvarx.o $(BLOBJ)

ISETOBJ = iset.o isetpl.o sgspac.o sintrp.o grdpar.o \
panel.o panplt.o panutl.o panstr.o \
io.o rbcalc.o \
sgutil.o ellip.o filter.o lefind.o spline.o gaussn.o \
bplt.o offget.o \
readbl.o userio.o \
bpario.o bldgen.o

IPLOTOBJ = iplot.o ncalc.o strmpl.o surfpl.o consetup.o contpl.o dplot.o \
picalc.o rbcalc.o area.o io.o mtec.o mtec_gs.o mtec_ge.o\
qshade.o bplt.o offget.o pltxy.o plutil.o \
profil.o uprof.o xyzbld.o spline.o gaussn.o \
userio.o ask.o \
prtfor.o 

EDPOBJ = edp.o edpres.o edplot.o modify.o \
picalc.o rbcalc.o io.o gmodes.o \
offget.o pltxy.o pabort.o \
xyzbld.o spline.o lefind.o \
writbl.o userio.o \
bpario.o \
prtfor.o

BLDOBJ = bldset.o bldgeo.o bldplt.o \
iobld.o \
bldgen.o bpario.o qspset.o \
panel.o panplt.o panutl.o \
readbl.o writbl.o userio.o ask.o \
offget.o pltxy.o bplt.o \
spline.o lefind.o gaussn.o

IPROBJ = iprint.o prtfor.o rbcalc.o io.o

PPLOBJ = polpl.o iopol.o userio.o ask.o


ISESINC = $(INC)/STATE.INC $(ISES)/ISES.INC
ISETINC = $(INC)/STATE.INC $(ISET)/ISET.INC
IPLOTINC = $(INC)/STATE.INC $(IPLOT)/IPLOT.INC
EDPINC = $(INC)/STATE.INC $(EDP)/EDP.INC

BLINC = $(BLSRC)/BLPAR.INC $(BLSRC)/INDEX.INC

BLDINC = $(BLDSRC)/BLDSET.INC



all: ises iset iplot edp bldset iprint polar

ises: $(ISESOBJ)
f77 -64 -o ises $(ISESOBJ)
iset: $(ISETOBJ) 
f77 -64 -o iset $(ISETOBJ) $(PLTLIB) -L/usr/X/lib -lX11
iplot: $(IPLOTOBJ) 
f77 -64 -o iplot $(IPLOTOBJ) $(PLTLIB) -L/usr/X/lib -lX11
edp: $(EDPOBJ) 
f77 -64 -o edp $(EDPOBJ) $(PLTLIB) -L/usr/X/lib -lX11
bldset: $(BLDOBJ) 
f77 -64 -o bldset $(BLDOBJ) $(PLTLIB) -L/usr/X/lib -lX11
iprint: $(IPROBJ)
f77 -64 -o iprint $(IPROBJ)
polar: $(POLAROBJ)
f77 -64 -o polar $(POLAROBJ)
polpl: $(PPLOBJ)
f77 -64 -o polpl $(PPLOBJ) $(PLTLIB) -L/usr/X/lib -lX11

fGrünschnabel

Praktikant

  • "fGrünschnabel" started this thread

Posts: 6

Date of registration: Aug 4th 2009

3

Tuesday, August 4th 2009, 8:00pm

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
clean: 
-/bin/rm $(ISESOBJ) ises 
-/bin/rm $(ISETOBJ) iset 
-/bin/rm $(IPLOTOBJ) iplot 
-/bin/rm $(EDPOBJ) edp
-/bin/rm $(BLDOBJ) bldset
-/bin/rm $(IPROBJ) iprint
-/bin/rm $(POLROBJ) polar


ises.o: $(ISES)/ises.f $(ISESINC)
f77 -c $(FLG) -I$(INC) $(ISES)/ises.f
isesinit.o: $(ISES)/isesinit.f $(ISESINC)
f77 -c $(FLG) -I$(INC) $(ISES)/isesinit.f
setup.o: $(ISES)/setup.f $(ISESINC)
f77 -c $(FLG) -I$(INC) $(ISES)/setup.f
setbc.o: $(ISES)/setbc.f $(ISESINC)
f77 -c $(FLG) -I$(INC) $(ISES)/setbc.f
nucalc.o: $(ISES)/nucalc.f $(ISESINC)
f77 -c $(FLG) -I$(INC) $(ISES)/nucalc.f
setbl.o: $(ISES)/setbl.f $(ISESINC)
f77 -c $(FLG) -I$(INC) -I$(INDEXdir) $(ISES)/setbl.f
update.o: $(ISES)/update.f $(ISESINC)
f77 -c $(FLG1) -I$(INC) $(ISES)/update.f
# OSF compiler chokes with -O
globit.o: $(ISES)/globit.f $(ISESINC)
f77 -c $(FLG) -I$(INC) $(ISES)/globit.f
smove.o: $(ISES)/smove.f $(ISESINC)
f77 -c $(FLG) -I$(INC) $(ISES)/smove.f
solve.o: $(ISES)/solve.f $(ISESINC)
f77 -c $(FLGOPT) -I$(INC) $(ISES)/solve.f
glosen.o: $(ISES)/glosen.f $(ISESINC)
f77 -c $(FLGOPT) -I$(INC) $(ISES)/glosen.f
mixout.o: $(ISES)/mixout.f $(ISESINC)
f77 -c $(FLG) -I$(INC) $(ISES)/mixout.f
io.o:   $(ISES)/io.f $(INC)/STATE.INC
f77 -c $(FLG) -I$(INC) $(ISES)/io.f
area.o:  $(ISES)/area.f $(INC)/STATE.INC
f77 -c $(FLG) -I$(INC) $(ISES)/area.f
rbcalc.o: $(ISES)/rbcalc.f $(INC)/STATE.INC
f77 -c $(FLG) -I$(INC) $(ISES)/rbcalc.f
picalc.o: $(ISES)/picalc.f $(INC)/STATE.INC
f77 -c $(FLG) -I$(INC) $(ISES)/picalc.f
gmodes.o: $(ISES)/gmodes.f
f77 -c $(FLG) $(ISES)/gmodes.f
lefind.o: $(UTSRC)/lefind.f
f77 -c $(FLG) $(UTSRC)/lefind.f
spline.o: $(UTSRC)/spline.f
f77 -c $(FLG) $(UTSRC)/spline.f
gaussn.o: $(UTSRC)/gaussn.f
f77 -c $(FLG) $(UTSRC)/gaussn.f
userio.o: $(IOSRC)/userio.f
f77 -c $(FLG) $(IOSRC)/userio.f

mrchbl.o: $(BLSRC)/mrchbl.f $(BLINC)
f77 -c $(FLG) $(BLSRC)/mrchbl.f
bltrn.o: $(BLSRC)/bltrn.f $(BLINC)
f77 -c $(FLG) $(BLSRC)/bltrn.f
blsys.o: $(BLSRC)/blsys.f $(BLINC)
f77 -c $(FLG) $(BLSRC)/blsys.f
bldif.o: $(BLSRC)/bldif.f $(BLINC)
f77 -c $(FLG) $(BLSRC)/bldif.f
blvar.o: $(BLSRC)/blvar.f $(BLINC)
f77 -c $(FLG) $(BLSRC)/blvar.f
blfun.o: $(BLSRC)/blfun.f $(BLINC)
f77 -c $(FLG) $(BLSRC)/blfun.f
blvarx.o: $(BLSRC)/blvarx.f
f77 -c $(FLG) $(BLSRC)/blvarx.f

linchk.o: $(DEBUG)/linchk.f $(ISESINC)
f77 -c $(FLG) -I$(INC) $(DEBUG)/linchk.f

polar.o: $(ISES)/polar.f $(ISESINC) $(INC)/PINDEX.INC
f77 -c $(FLG) -I$(INC) $(ISES)/polar.f

iset.o: $(ISET)/iset.f  $(ISETINC)
f77 -c $(FLG) -I$(INC) $(ISET)/iset.f
isetpl.o: $(ISET)/isetpl.f $(ISETINC)
f77 -c $(FLG) -I$(INC) $(ISET)/isetpl.f
sgspac.o: $(ISET)/sgspac.f $(ISETINC)
f77 -c $(FLG) -I$(INC) $(ISET)/sgspac.f
sintrp.o: $(ISET)/sintrp.f $(ISETINC)
f77 -c $(FLG) -I$(INC) $(ISET)/sintrp.f
grdpar.o: $(ISET)/grdpar.f $(ISETINC)
f77 -c $(FLG) -I$(INC) $(ISET)/grdpar.f
panel.o: $(PNSRC)/panel.f $(PNSRC)/PANEL.INC
f77 -c $(FLG) $(PNSRC)/panel.f
panplt.o: $(PNSRC)/panplt.f $(PNSRC)/PANEL.INC
f77 -c $(FLG) $(PNSRC)/panplt.f
panstr.o: $(PNSRC)/panstr.f $(PNSRC)/PANEL.INC
f77 -c $(FLG) $(PNSRC)/panstr.f
panutl.o: $(PNSRC)/panutl.f
f77 -c $(FLG) $(PNSRC)/panutl.f
sgutil.o: $(UTSRC)/sgutil.f
f77 -c $(FLG) $(UTSRC)/sgutil.f
ellip.o: $(UTSRC)/ellip.f
f77 -c $(FLG) $(UTSRC)/ellip.f
filter.o: $(UTSRC)/filter.f
f77 -c $(FLG) $(UTSRC)/filter.f

readbl.o: $(IOSRC)/readbl.f
f77 -c $(FLG) $(IOSRC)/readbl.f
writbl.o: $(IOSRC)/writbl.f
f77 -c $(FLG) $(IOSRC)/writbl.f

iplot.o: $(IPLOT)/iplot.f $(IPLOTINC)
f77 -c $(FLG) -I$(INC) $(IPLOT)/iplot.f
ncalc.o: $(IPLOT)/ncalc.f $(IPLOTINC)
f77 -c $(FLG) -I$(INC) $(IPLOT)/ncalc.f
strmpl.o: $(IPLOT)/strmpl.f $(IPLOTINC)
f77 -c $(FLG) -I$(INC) $(IPLOT)/strmpl.f
surfpl.o: $(IPLOT)/surfpl.f $(IPLOTINC)
f77 -c $(FLG) -I$(INC) $(IPLOT)/surfpl.f
consetup.o: $(IPLOT)/consetup.f $(IPLOTINC)
f77 -c $(FLG) -I$(INC) $(IPLOT)/consetup.f
contpl.o: $(IPLOT)/contpl.f $(IPLOTINC)
f77 -c $(FLG) -I$(INC) $(IPLOT)/contpl.f
dplot.o: $(IPLOT)/dplot.f $(IPLOTINC)
f77 -c $(FLG) -I$(INC) $(IPLOT)/dplot.f

mtec.o: $(IPLOT)/mtec.f $(IPLOTINC) 
f77 -c $(FLG) -I$(INC) $(IPLOT)/mtec.f
mtec_gs.o: $(IPLOT)/mtec_gs.f $(IPLOTINC)
f77 -c $(FLG) -I$(INC) $(IPLOT)/mtec_gs.f
mtec_ge.o: $(IPLOT)/mtec_ge.f $(IPLOTINC)
f77 -c $(FLG) -I$(INC) $(IPLOT)/mtec_ge.f

bplt.o: $(PLSRC)/bplt.f $(IPLOTINC)
f77 -c $(FLG) -I$(INC) $(PLSRC)/bplt.f
qshade.o: $(PLSRC)/qshade.f
f77 -c $(FLG) $(PLSRC)/qshade.f
profil.o: $(UTSRC)/profil.f
f77 -c $(FLG) $(UTSRC)/profil.f
uprof.o: $(UTSRC)/uprof.f
f77 -c $(FLG) $(UTSRC)/uprof.f
xyzbld.o: $(UTSRC)/xyzbld.f
f77 -c $(FLG) $(UTSRC)/xyzbld.f
pltxy.o: $(PLSRC)/pltxy.f
f77 -c $(FLG) $(PLSRC)/pltxy.f
offget.o: $(PLSRC)/offget.f
f77 -c $(FLG) $(PLSRC)/offget.f
plutil.o: $(PLSRC)/plutil.f
f77 -c $(FLG) $(PLSRC)/plutil.f


edp.o: $(EDP)/edp.f   $(EDPINC)
f77 -c $(FLG) -I$(INC) $(EDP)/edp.f
edpres.o: $(EDP)/edpres.f $(EDPINC)
f77 -c $(FLG) -I$(INC) $(EDP)/edpres.f
modify.o: $(EDP)/modify.f $(EDPINC)
f77 -c $(FLG) -I$(INC) $(EDP)/modify.f
edplot.o: $(EDP)/edplot.f $(EDPINC)
f77 -c $(FLG) -I$(INC) $(EDP)/edplot.f
pabort.o: $(PLSRC)/pabort.f
f77 -c $(FLG) $(PLSRC)/pabort.f


bldset.o: $(BLDSRC)/bldset.f $(BLDINC)
f77 -c $(FLG) $(BLDSRC)/bldset.f
bldgeo.o: $(BLDSRC)/bldgeo.f $(BLDINC)
f77 -c $(FLG) $(BLDSRC)/bldgeo.f
bldplt.o: $(BLDSRC)/bldplt.f $(BLDINC)
f77 -c $(FLG) $(BLDSRC)/bldplt.f
iobld.o: $(ISES)/iobld.f
f77 -c $(FLG) $(ISES)/iobld.f
ask.o: $(IOSRC)/ask.f
f77 -c $(FLG) $(IOSRC)/ask.f


bldgen.o: $(GEOSRC)/bldgen.f
f77 -c $(FLG) $(GEOSRC)/bldgen.f
qspset.o: $(GEOSRC)/qspset.f
f77 -c $(FLG) $(GEOSRC)/qspset.f
bpario.o: $(GEOSRC)/bpario.f
f77 -c $(FLG) $(GEOSRC)/bpario.f
bpcon.o: $(GEOSRC)/bpcon.f
f77 -c $(FLG) $(GEOSRC)/bpcon.f


iprint.o: $(IPRINT)/iprint.f $(INC)/STATE.INC
f77 -c $(FLG) -I$(INC) $(IPRINT)/iprint.f
prtfor.o: $(IPRINT)/prtfor.f $(INC)/STATE.INC
f77 -c $(FLG) -I$(INC) $(IPRINT)/prtfor.f

polpl.o: $(PPSRC)/polpl.f $(PPSRC)/POLPL.INC $(INC)/PINDEX.INC
f77 -c $(FLG1) -I$(INC) $(PPSRC)/polpl.f

iopol.o: $(PPSRC)/iopol.f $(INC)/PINDEX.INC
f77 -c $(FLG) -I$(INC) $(PPSRC)/iopol.f


matpl: matpl.o
f77 -o matpl matpl.o $(PLTLIB) -L/usr/X/lib -lX11

matpl.o: $(DEBUG)/matpl.f
f77 -c -O1 -static $(DEBUG)/matpl.f

dstpl: dstpl.o
f77 -o dstpl dstpl.o $(PLTLIB) -L/usr/X/lib -lX11

dstpl.o: $(DEBUG)/dstpl.f
f77 -c -O1 -static $(DEBUG)/dstpl.f


Wichtig wäre, dass das Program in "double-precision" kompiliert wird.


Ich hoffe ihr könnt mir weiterhelfen. Falls irgendwelche Informationen benötigt werden, werde ich diese sofort besorgen.

Dann wünsche ich einen schönen Abend.

fGrünschnabel

PS: Sorry für das Splitten des Posts, aber der Code war einfach zu lang.

kakTuZ

größtenteils harmlos

  • "kakTuZ" is male

Posts: 309

Date of registration: Oct 14th 2003

Location: Hannover

Occupation: Software Developer

4

Tuesday, August 4th 2009, 8:28pm

Ohne mir das auch nur angeschaut zu haben, wäre das Vorgehen:

Makefile ausführen
wenn es funktioniert: freu dich
wenn es nicht funktioniert: Fehlermeldung anschauen, entweder ist ein Pfad falsch oder es fehlt eine lib
Pfad fixen oder lib installieren
von Vorne anfangen
#! /bin/bash
yes 'arch is still the best'

This post has been edited 1 times, last edit by "kakTuZ" (Aug 4th 2009, 8:28pm)


fGrünschnabel

Praktikant

  • "fGrünschnabel" started this thread

Posts: 6

Date of registration: Aug 4th 2009

5

Tuesday, August 4th 2009, 9:23pm

Danke für deine Antwort.

Das habe ich auch so gemacht, aber ich werde nicht wirklich schlau aus den Fehlermeldungen.

Das Problem ist, dass der ursprüngliche Compiler f77 nicht die gleichen Flags benutzt, wie der aktuelle ifort oder gfortran.

Ausführen der Makefile funktioniert leider nicht... sonst würde ich mich ja freuen :-)

kakTuZ

größtenteils harmlos

  • "kakTuZ" is male

Posts: 309

Date of registration: Oct 14th 2003

Location: Hannover

Occupation: Software Developer

6

Tuesday, August 4th 2009, 10:05pm

Von Fortran habe ich nun gar keine Ahnung, aber du kannst ja mal posten, was du für Fehler bekommst. Vielleicht wird da ja einer draus schlau. Nachvollziehen wird das aber hier keine können, weil wir das Zielsystem nicht haben und auch nicht den restlichen Quellcode (den du aber hier jetzt nicht posten brauchst).
#! /bin/bash
yes 'arch is still the best'

Currywurst mit Pommes

Erfahrener Schreiberling

Posts: 438

Date of registration: Oct 14th 2002

7

Wednesday, August 5th 2009, 9:57am

Yo, Fehlermeldung posten wäre hilfreich.

hamena314

Zerschmetterling

  • "hamena314" is male

Posts: 2,032

Date of registration: Aug 31st 2003

Location: Hannover

Occupation: Informatikstudent (d'uh)

8

Wednesday, August 5th 2009, 11:35am

Hi,
meinst du mit "double-precision"-Version vielleicht einfach nur Zeile 71ff. auszukommentieren? Also die Raute zu entfernen?

HAVE PHUN!
Nicht der Wind bestimmt die Richtung, sondern das Segel! (Lao Xiang, China)

This post has been edited 1 times, last edit by "hamena314" (Aug 5th 2009, 11:35am)


fGrünschnabel

Praktikant

  • "fGrünschnabel" started this thread

Posts: 6

Date of registration: Aug 4th 2009

9

Wednesday, August 5th 2009, 1:28pm

Ich habe jetzt mal folgende Einstellungen gemacht:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
F77 = gfortran
CC  = gcc
# Uncomment to make double-precision version
#DP = -fdefault-double-8
DP = -fdefault-real-8

# Some fortrans need trailing underscores in C interface symbols (see Xwin.c)
DEFINE = -DUNDERSCORE

FFLAGS  = -O $(DP)
CFLAGS  = -O $(DEFINE)
AR = ar r
RANLIB = ranlib
LINKLIB = -L/usr/X11R6/lib -lX11


Das ist jetzt nur für die X11 Bibliothek.
So läuft er durch, ist allerdings nicht "double precision", wenn ich aber statt dem "real" ein "double" mache, kommt die Fehlermeldung:
use of -fdefault-double-8 requires -fdefault-real-8
Ich weiß allerdings nicht wie und wo ich das vorher deklarieren soll.

noch ein Paar kurze Fragen:

Source code

1
2
FFLAGS  = -O $(DP)
CFLAGS  = -O $(DEFINE)

Kann mir einer den Teil kurz erkären? wofür steht das -0 und wo ist der Unterschied zu zB -03?

Was hat es mit diesem "trailing underscores" auf sich?

Danke vielmals für eure Antworten.

Grüße
fGrünschnabel

kakTuZ

größtenteils harmlos

  • "kakTuZ" is male

Posts: 309

Date of registration: Oct 14th 2003

Location: Hannover

Occupation: Software Developer

10

Wednesday, August 5th 2009, 2:07pm

So läuft er durch, ist allerdings nicht "double precision", wenn ich aber statt dem "real" ein "double" mache, kommt die Fehlermeldung:
use of -fdefault-double-8 requires -fdefault-real-8
du könntest die probieren die Zeile in

Source code

1
DP = -fdefault-double-8 -fdefault-real-8
zu ändern.

Kann mir einer den Teil kurz erkären? wofür steht das -0 und wo ist der Unterschied zu zB -03?
-O schaltet im gcc Optimierungen ein. Bei -O3 wird noch stärker optimiert. Was genau an/aus geschaltet wird, list du am besten in der manpage nach ($ man gcc), kein Angst, die ist etwas länger, aber man kann ja nach -O suchen. Alternativ hier nachlesen: http://gcc.gnu.org/onlinedocs/gcc-4.4.1/…ptimize-Options

Was hat es mit diesem "trailing underscores" auf sich?
Hmm, internes Zeugs, nach dem, was in der gfortran manpage steht, hängt das irgendwie mit den Symbolnamen in den Objektdateien zusammen (kannst du glaub ich ignorieren).
#! /bin/bash
yes 'arch is still the best'

This post has been edited 1 times, last edit by "kakTuZ" (Aug 5th 2009, 2:07pm)


fGrünschnabel

Praktikant

  • "fGrünschnabel" started this thread

Posts: 6

Date of registration: Aug 4th 2009

11

Thursday, August 27th 2009, 1:07pm

Hallo nochmal,

ich habe es geschafft das Programm erfolgreich zu kompilieren.

Ich möchte mich nochmals für eure sehr nützliche Hilfe bedanken.

Grüße
fGrünschnabel

Markus

the one and only Unterstrich!

Posts: 2,571

Date of registration: Oct 9th 2003

12

Thursday, August 27th 2009, 3:15pm

Vlt. könntest du kurz zusammenfassen, wie du das Problem gelöst hast? Man weiß ja nie, wer durch Google zufällig auf diese Seite stößt und zufällig das gleiche Problem hat und sich dann über deine Lösung riesig freuen würde :D
Charmant sein? Hab ich längst aufgegeben. Glaubt mir doch eh keiner...