错误提示为:
/opt/mpi/intelmpi/3.1/bin/mpif77 -c -g -mp share3dcyl.f
[: 417: no: unexcepted operator
f771: error: invalid option p'
make: *** [shape3dcyl.o] Error 1
makefile是这样的:
# set an environment variable LINUX_PGI=1 to compile on Linux, or
# MAC_PGI=1 to compile on a Mac.
ifdef LINUX_PGI
F77 = pgf95
cc = pgcc
CC = pgCC
opts = -g -Mbounds -mcmodel=medium -Mcache_align -mp#opts = -fastsse -Mipa=fast -Minfo=loop -Mcache_align -mcmodel=medium -mp
# your optimized BLAS library here. This is the AMD Core Math Library
BLAS = -lacml
endif
ifdef MAC_PGI
F77 = pgf95
cc = pgcc
CC = pgcpp
opts = -fastsse -mp
#opts = -g -Mlarge_arrays -Mbounds -mp
BLAS = -Wl,-framework,veclib
endif
### end PGI
# optimize flags
files=assign_dxm.f\
shape3dcyl.f\
window3d.f\
window1d.f\
correct3dcyl.f\
gauss3d.f\
write3d.f\
FEM_shp3d.f\
ReadAline.f\
extf_loadpar.f\
p_sts_JC.f \
myforlib.f\
dgeco.f\
dgefa.f\
dgedi.f\
shell_body_forceZ.f\
Dforce_update.f\
matrix.f \
initialize.f \
permuteD.f \
evalPoly.f \
evalQuad.f \
restart.f \
p_search3d.f
objs = $(files:.f=.o)
all: pRKPM pshape
pRKPM: $(objs) new_pmain3d.o
$(F77) -o $@ $(opts) $^ $(CIRCE) $(BLAS)
pshape: $(objs) comp_shape.o prepro3d.o
$(F77) -o $@ $(opts) $^ $(CIRCE) $(BLAS)
.f.o: parameter.h
$(F77) -c $(opts) $<
clean:
rm -f pshape pRKPM pstate $(objs) *.o *.oo
6 个解决方案
#1
刚开始接触linux,不太清楚红色部分是什么意思
#2
opts = -g -Mbounds -mcmodel=medium -Mcache_align -mp
变量赋值
$(F77) -o $@ $(opts) $^ $(CIRCE) $(BLAS) --》
这句有好几个变量
F77 = pgf95
opts = -g -Mbounds -mcmodel=medium -Mcache_align -mp
BLAS = -Wl,-framework,veclib
$(CIRCE) 在文章中没有找到定义应该也是变量
所以就是上面那个展开就是:
pgf95 -o $@ -g -Mbounds -mcmodel=medium -Mcache_align -mp $^ 【变量CIRCE】-Wl,-framework,veclib
变量赋值
$(F77) -o $@ $(opts) $^ $(CIRCE) $(BLAS) --》
这句有好几个变量
F77 = pgf95
opts = -g -Mbounds -mcmodel=medium -Mcache_align -mp
BLAS = -Wl,-framework,veclib
$(CIRCE) 在文章中没有找到定义应该也是变量
所以就是上面那个展开就是:
pgf95 -o $@ -g -Mbounds -mcmodel=medium -Mcache_align -mp $^ 【变量CIRCE】-Wl,-framework,veclib
#3
/opt/mpi/intelmpi/3.1/bin/mpif77 -c -g -mp share3dcyl.f
[: 417: no: unexcepted operator
f771: error: invalid option p'
make: *** [shape3dcyl.o] Error 1
make 文件 share3dcyl.f
时候出现了无法识别的操作符 [:,也许导致了工具f771:有一个无法识别的选项p'
你应该去查share3dcyl.f文件
[: 417: no: unexcepted operator
f771: error: invalid option p'
make: *** [shape3dcyl.o] Error 1
make 文件 share3dcyl.f
时候出现了无法识别的操作符 [:,也许导致了工具f771:有一个无法识别的选项p'
你应该去查share3dcyl.f文件
#4
也就是说,源文件share3dcyl.f本身出现了问题,而不是makefile的问题,是这样吗?
#5
也就是说,源文件share3dcyl.f本身出现了问题,而不是makefile的问题,是这样吗?
#6
可以这么认为
#1
刚开始接触linux,不太清楚红色部分是什么意思
#2
opts = -g -Mbounds -mcmodel=medium -Mcache_align -mp
变量赋值
$(F77) -o $@ $(opts) $^ $(CIRCE) $(BLAS) --》
这句有好几个变量
F77 = pgf95
opts = -g -Mbounds -mcmodel=medium -Mcache_align -mp
BLAS = -Wl,-framework,veclib
$(CIRCE) 在文章中没有找到定义应该也是变量
所以就是上面那个展开就是:
pgf95 -o $@ -g -Mbounds -mcmodel=medium -Mcache_align -mp $^ 【变量CIRCE】-Wl,-framework,veclib
变量赋值
$(F77) -o $@ $(opts) $^ $(CIRCE) $(BLAS) --》
这句有好几个变量
F77 = pgf95
opts = -g -Mbounds -mcmodel=medium -Mcache_align -mp
BLAS = -Wl,-framework,veclib
$(CIRCE) 在文章中没有找到定义应该也是变量
所以就是上面那个展开就是:
pgf95 -o $@ -g -Mbounds -mcmodel=medium -Mcache_align -mp $^ 【变量CIRCE】-Wl,-framework,veclib
#3
/opt/mpi/intelmpi/3.1/bin/mpif77 -c -g -mp share3dcyl.f
[: 417: no: unexcepted operator
f771: error: invalid option p'
make: *** [shape3dcyl.o] Error 1
make 文件 share3dcyl.f
时候出现了无法识别的操作符 [:,也许导致了工具f771:有一个无法识别的选项p'
你应该去查share3dcyl.f文件
[: 417: no: unexcepted operator
f771: error: invalid option p'
make: *** [shape3dcyl.o] Error 1
make 文件 share3dcyl.f
时候出现了无法识别的操作符 [:,也许导致了工具f771:有一个无法识别的选项p'
你应该去查share3dcyl.f文件
#4
也就是说,源文件share3dcyl.f本身出现了问题,而不是makefile的问题,是这样吗?
#5
也就是说,源文件share3dcyl.f本身出现了问题,而不是makefile的问题,是这样吗?
#6
可以这么认为