質問編集履歴

1

Makefileのコードを追加しました。

2021/06/29 03:36

投稿

haharuru
haharuru

スコア4

test CHANGED
File without changes
test CHANGED
@@ -4,9 +4,13 @@
4
4
 
5
5
  プログラムの初心者です。
6
6
 
7
+ 現在Makefile.gnuをMakeしたいのですが、以下のエラーが出ます。
8
+
7
- 現在fortranのプログラムでエラーが発生しています。
9
+ C++のコードとfortranのコードを使用しており、プログラムでエラーが発生しています。
8
10
 
9
11
  このエラーの解決を行いたいです。
12
+
13
+ 以前リンクでのエラーとのご指摘がありましたが、まだわかりませんでした。
10
14
 
11
15
  このエラーに対する原因として考えられるものは何があるでしょうか。
12
16
 
@@ -64,12 +68,130 @@
64
68
 
65
69
 
66
70
 
71
+ ```
72
+
73
+
74
+
75
+ ###code model
76
+
77
+ ```
78
+
79
+ #
80
+
81
+ # Makefile for SDFlib sample
82
+
83
+ #
84
+
85
+ HAVE_FC=yes
86
+
87
+
88
+
89
+ # override 'G' to optimize
90
+
91
+ G = -g
92
+
93
+
94
+
95
+ # override 'PREFIX' to specify your installed dir
96
+
97
+ ROOT = $(PWD)
98
+
99
+ PREFIX = $(ROOT)/../usr/local/sphere
100
+
101
+
102
+
103
+ SDFDIR = $(PREFIX)
104
+
105
+
106
+
107
+ PROGS = sdfTest
108
+
109
+
110
+
111
+ CXX = c++
112
+
113
+ CXXFLAGS = $(G) -I$(SDFDIR)/include/sdf
114
+
115
+ LD = $(CXX)
116
+
117
+ LDFLAGS = $(G) -L$(SDFDIR)/lib
118
+
119
+ LDLIBS = -L$(SDFDIR)/lib
120
+
121
+
122
+
123
+ FC = gfortran
124
+
125
+ FFLAGS = $(G) -I$(SDFDIR)/include/sdf
126
+
127
+ LDF = $(FC)
128
+
129
+ LDFLAGSF = $(G) -L$(SDFDIR)/lib
130
+
131
+ LDLIBSF = -lSDF -lm -lstdc++
132
+
133
+
134
+
135
+ ifeq ($(HAVE_FC),yes)
136
+
137
+ LDLIBS += -lSDF -lgfortran
138
+
139
+ PROGS += fortTest
140
+
141
+ endif
67
142
 
68
143
 
69
144
 
70
145
 
146
+
147
+
148
+
149
+ TARGET = $(PROGS)
150
+
151
+
152
+
153
+ all : $(TARGET)
154
+
155
+
156
+
157
+ sdfTest : sdfTest.o
158
+
71
- //code model //
159
+ $(LD) $(LDFLAGS) -o $@ $< $(LDLIBS)
160
+
161
+
162
+
163
+ fortTest : fortTest.o
164
+
165
+ $(LDF) $(LDFLAGSF) -o $@ $< $(LDLIBS)
166
+
167
+
168
+
169
+
170
+
171
+ clean:
172
+
173
+ $(RM) *.o test_out*
174
+
175
+
176
+
177
+ distclean: clean
178
+
179
+ $(RM) $(PROGS)
72
180
 
73
181
 
74
182
 
75
183
  ```
184
+
185
+
186
+
187
+
188
+
189
+
190
+
191
+
192
+
193
+ ### 試したこと
194
+
195
+
196
+
197
+ 言語間結合について学習しました。