Compiling FAST V7 using MinGW in Windows with make file

Hello,
I have a problem with running the compiler. My make file is as below: -

#================================================================================#

This makefile created by B. Jonkman on 19-Feb-2013,

adapted from Crunch (M. Buhl on 25-Jan-2013).

(c) 2013 National Renewable Energy Laboratory

This makefile has been tested on Windows 7 with gfortran.

This makefile works with mingw32-make.exe.

It was designed to be used with:

FAST (v7.02.00d-bjj, 20-Feb-2013)

AeroDyn (v13.00.02a-bjj, 20-Feb-2013)

InflowWind (v1.01.00b-bjj, 10-Aug-2012)

NWTC Subroutine Library (v1.07.00b-mlb, 10-Jan-2013)

Older versions of the source code may not work with this makefile.

#================================================================================#

32-bit or 64-bit?

BITS = 32
#BITS = 64

Location of source files for FAST, AeroDyn, InflowWind, and the NWTC Library.

You will probably need to change these for your system.

ifeq ($(OS),Windows_NT)
NWTC_LIB_DIR= C:\FAST\Source\dependencies\NWTC_Library
AERODYN_DIR = C:\FAST\Source\dependencies\AeroDyn
WIND_DIR = C:\FAST\Source\dependencies\InflowWind
FAST_DIR = C:\FAST\Source
else
NWTC_LIB_DIR = $(HOME)/PC/CAEtools/Miscellaneous/NWTC_Library/trunk/source
AERODYN_DIR = $(HOME)/PC/CAEtools/simulators/AeroDyn/SVNdirectory/trunk/Source
WIND_DIR = $(HOME)/PC/CAEtools/simulators/InflowWind/SVNdirectory/trunk/Source
FAST_DIR = $(HOME)/PC/CAEtools/simulators/FAST/SVNdirectory/trunk/Source

endif

Name of compiler to use and flags to use.

FC = gfortran
FFLAGS = -O2 -m$(BITS) -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
LDFLAGS = -O2 -m$(BITS) -fbacktrace

other useful gfortran options:

-fdefault-real-8 -fcheck=bounds -std=f2003 -O0 -v

Precision.

Use “SingPrec” for single precision and “DoubPrec” for double precision. You may also need to change an option switch to make constants DP.

PREC = SingPrec

Destination and RootName for executable

OUTPUT_NAME = FAST
DEST_DIR = .

#==========================================================#

You should not need to change anything beyond this point

#==========================================================#

Then I type the following command into the cmd line.


C:\FAST\Compiling>mingw32-make
gfortran -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c
C:\FAST\Source\dependencies\NWTC_Library/SysGnuWin.f90 -o Obj_win32/SysGnuWin.obj -J Obj_wi
n32
C:\FAST\Source\dependencies\NWTC_Library/SysGnuWin.f90:50.35:

USE NWTC_Base
1
Fatal Error: Can’t open module file ‘nwtc_base.mod’ for reading at (1): No such file or dir
ectory
makefile:165: recipe for target ‘SysGnuWin.obj’ failed
mingw32-make: *** [SysGnuWin.obj] Error 1

As far as I can see, I have told the make file where the directories are, so why do I get the error “Can’t open module file ‘nwtc_base.mod’ for reading at (1): No such file or directory”?

Any help appreciated.

Phillip

Hi, Phillip.

Are you using the correct version of the NWTC Library files for FAST v7? The error message you are getting looks like it finds “USE NWTC_Base” on line 50 of SysGunWin.f90. However, that line does not exist in v1 of the NWTC Library, which is what FAST v7 needs to be compiled with.

So, first check that you’ve got the correct version of the source files (the FAST v7 web site lists the versions it was compiled with). If that still doesn’t work, try executing “make clean” from your command prompt (or “mingw32-make clean”). You can also try to modify the make file’s compile commands by adding the -I switch so it’s not getting old mod/obj files from another directory:

%.obj: %.f90 $(FC) -I $(INTER_DIR) $(FFLAGS) -c $< -o $(INTER_DIR)/$@ -J $(INTER_DIR)

Thanks Bonnie,
I’ll take a look into this right away.

Phillip

Bonnie,
thanks for your help. I have updated the archive files to the ones required for compiling. This took me forward a little bit however I get stuck again. This is where I get now : -


C:\FAST\Compiling>mingw32-make
mingw32-make: *** No rule to make target ‘SharedInflowDefs.obj’, needed by ‘FAST_gwin32.exe’. Stop.


So despite the following lines in the make file for the rules: -


Rule to do everything.

all: default
default: $(INTER_DIR) $(DEST_DIR)/$(OUTPUT_NAME)$(EXE_EXT)

General rules for compliling the files.

%.obj: %.f90
$(FC) $(FFLAGS) -c $< -o $(INTER_DIR)/$@ -J $(INTER_DIR)

fftpack.obj: fftpack.f
$(F77) $(FFLAGS) -c $< -o $(INTER_DIR)/$@ -J $(INTER_DIR)

Dependency rules.

ModMesh.obj: $(PREC).obj
$(SYS_FILE).obj: $(PREC).obj
NWTC_IO.obj: $(SYS_FILE).obj
NWTC_Num.obj: NWTC_IO.obj
NWTC_Aero.obj: NWTC_IO.obj NWTC_Num.obj
NWTC_Library.obj: NWTC_Aero.obj ModMesh.obj

HHWind.obj: NWTC_Library.obj SharedInflowDefs.obj
FFWind.obj: NWTC_Library.obj SharedInflowDefs.obj
HAWCWind.obj: NWTC_Library.obj SharedInflowDefs.obj
FDWind.obj: NWTC_Library.obj SharedInflowDefs.obj
CTWind.obj: NWTC_Library.obj SharedInflowDefs.obj
UserWind.obj: NWTC_Library.obj SharedInflowDefs.obj
InflowWindMod.obj: NWTC_Library.obj SharedInflowDefs.obj HHWind.obj FFWind.obj HAWCWind.obj FDWind.obj CTWind.obj UserWind.obj

AeroMods.obj: NWTC_Library.obj
GenSubs.obj: NWTC_Library.obj AeroMods.obj
AeroSubs.obj: NWTC_Library.obj AeroMods.obj
AeroDyn.obj: NWTC_Library.obj AeroMods.obj SharedTypes.obj AeroSubs.obj GenSubs.obj InflowWindMod.obj

fftpack.obj: NWTC_Library.obj
HydroCalc.obj: NWTC_Library.obj FFTMod.obj

FAST_Mods.obj: NWTC_Library.obj AeroDyn.obj
Noise.obj: NWTC_Library.obj FAST_Mods.obj AeroDyn.obj InflowWindMod.obj
FAST_IO.obj: NWTC_Library.obj FAST_Mods.obj AeroDyn.obj InflowWindMod.obj HydroCalc.obj Noise.obj
FAST.obj: NWTC_Library.obj FAST_Mods.obj AeroDyn.obj InflowWindMod.obj HydroCalc.obj FAST_IO.obj
FAST_Lin.obj: NWTC_Library.obj FAST_Mods.obj AeroDyn.obj InflowWindMod.obj FAST.obj
FAST2ADAMS.obj: NWTC_Library.obj FAST_Mods.obj AeroDyn.obj InflowWindMod.obj
PitchCntrl_ACH.obj: NWTC_Library.obj
UserSubs.obj: NWTC_Library.obj
UserVSCont_KP.obj: NWTC_Library.obj
AeroCalc.obj: NWTC_Library.obj Noise.obj
SetVersion.obj: NWTC_Library.obj HydroCalc.obj
FAST_Prog.obj: NWTC_Library.obj FAST_Mods.obj FAST_IO.obj FAST.obj FAST2ADAMS.obj FAST_Lin.obj HydroCalc.obj Noise.obj

BladedDLLInterface.obj: NWTC_Library.obj FAST_Mods.obj
UserSubs_forBladedDLL.obj: NWTC_Library.obj
UserVSCont_KP_forBladedDLL.obj: NWTC_Library.obj

#$(OUTPUT_NAME)$(EXE_EXT): Fast_Prog.obj

Make sure the destination directory for the intermediate files exist.

$(INTER_DIR):
$(MD_CMD) $(INTER_DIR)

For linking FAST.

$(DEST_DIR)/$(OUTPUT_NAME)$(EXE_EXT): $(ALL_OBJS) | $(INTER_DIR)
$(FC) $(LDFLAGS) -I $(INTER_DIR) -o $(DEST_DIR)/$(OUTPUT_NAME)$(EXE_EXT)
$(foreach src, $(ALL_OBJS), $(addprefix $(INTER_DIR)/,$(src)))

Cleanup afterwards.

clean:
$(DEL_CMD) $(INTER_DIR)$(PATH_SEP).mod $(INTER_DIR)$(PATH_SEP).obj


I tried adding the “-I” into the object file rule as you suggested and found no difference.

Any help would be great.

Phillip

Ok,
I think I have solved the ‘sharedinflowdefs.obj’ error because I have downloaded the ‘InflowWind Archive for Windows® (EXE 818 KB) (v1.02.00c-bjj, 818 KB, 9-August-2013)’ from the NREL website.

However now when I run mingw this is what happens: -

Command line input


C:\FAST\Compiling>mingw32-make


Response


mingw32-make: *** No rule to make target ‘SingPrec.obj’, needed by ‘FAST_gwin32.exe’. Stop.


However my make file (posted above) has defined : -

PREC = SingPrec

and

Source files (by module)

LIB_SOURCES =
$(PREC).f90
$(SYS_FILE).f90 \

followed by

Dependency rules.

ModMesh.obj: $(PREC).obj
$(SYS_FILE).obj: $(PREC).obj

So as far as I can see, there is a rule for creating the ‘singprec.f90’ and I have checked to make sure that there is a ‘singprec.f90’ file in C:\FAST\Source\dependencies\NWTC_Library\SingPrec.f90

I am using the MinGW installer module which has ensured that I am running the latest version 4.8.1.

I am still using FAST v7 because I want to get really familiar with V7 and the pitching routine I am working on before upgrading.

Looking forward to any help offered.

Phillip

Hi, Phillip.

I’d first check that the paths to the source files, particularly NWTC_LIB_DIR, are specified correctly, and make sure you are using “/” instead of “” in the path names. If the path isn’t correct or if it’s interpreting the “” as a special character, it can throw weird errors.

Also, make sure you’ve got the -I option on your compiling rules:

[code] # General rules for compiling the files.

%.obj: %.f90
$(FC) -I $(INTER_DIR) $(FFLAGS) -c $< -o $(INTER_DIR)/$@ -J $(INTER_DIR)

fftpack.obj: fftpack.f
$(F77) -I $(INTER_DIR) $(FFLAGS) -c $< -o $(INTER_DIR)/$@ -J $(INTER_DIR)
[/code]
When you are debugging the makefile, you can print variables by replace the rule for “all” with something like this:

# use this for "all" for debugging: print variables: all: ; $(info $$NWTC_LIB_DIR is [${NWTC_LIB_DIR}]) echo debugging

Bonnie,
thank you for your response. The forward slash solved the first problem thank you. I had been using back slashes.

I know get a compile error which forces the compile to abort.


C:\FAST\Compiling>mingw32-make clean
del Obj_win32\.mod Obj_win32\.obj
Could Not Find C:\FAST\Compiling\Obj_win32*.mod

C:\FAST\Compiling>mingw32-make
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source/SingPrec.f90 -o Obj_win32/
SingPrec.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source/SysGnuWin.f90 -o Obj_win32
/SysGnuWin.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source/NWTC_IO.f90 -o Obj_win32/N
WTC_IO.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source/NWTC_IO.f90: In function ‘che
ckargs’:
C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source/NWTC_IO.f90:854:0: internal c
ompiler error: in gfc_get_symbol_decl, at fortran/trans-decl.c:1444
END SUBROUTINE ChkRealFmtStr ! ( RealFmt, TrapErrors )
^

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application’s support team for more information.

C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source/NWTC_IO.f90:854:0: internal c
ompiler error: Aborted

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application’s support team for more information.

What does "Warning: Nonexistent include directory “-O2” mean?

I have looked up the ‘-O2’ command and it appears to be an optimisation command that defines the level of code optimisation. ‘0’ = no optimisation → ‘3’ = most optimisation available. eg code runs faster but will probably take longer to compile. reference faculty.washington.edu/rjl/uwama … flags.html.

Could this be an internal MinGW compiler issue, or a user issue?

I added the “all: ; $(info $$NWTC_LIB_DIR is [${NWTC_LIB_DIR}]) echo debugging” line and commented out “all: default” but the command line response is simply: -


$NWTC_LIB_DIR is [C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source]
echo debugging
debugging

Again any help with this is really appreciated. I unfortunately have almost no ‘marco’ programming experience until now.

Thanks again.

Phillip

Hello,
right. I did some searching on the forum and discovered this post [url]http://forums.nrel.gov/t/problem-compiling-fast-with-gfortran-on-windows/897/2].

I changed
“CHARACTER(LEN(InputFile)) :: Arg”
for
“CHARACTER(1024) :: Arg”.

In the “NWTC_IO.f90” file in the NWTC library folder.

This took me further into the compile and I now get this output: -


C:\FAST\Compiling>mingw32-make
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source/SingPrec.f90 -o Obj_win32/
SingPrec.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source/SysGnuWin.f90 -o Obj_win32
/SysGnuWin.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source/NWTC_IO.f90 -o Obj_win32/N
WTC_IO.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source/NWTC_Num.f90 -o Obj_win32/
NWTC_Num.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source/ModMesh.f90 -o Obj_win32/M
odMesh.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source/NWTC_Aero.f90 -o Obj_win32
/NWTC_Aero.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/NWTC_library_V1/Source/NWTC_Library.f90 -o Obj_wi
n32/NWTC_Library.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/dependencies/InflowWind/SharedInflowDefs.f90 -o Obj_win32/SharedInflowDef
s.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/dependencies/InflowWind/HHWind.f90 -o Obj_win32/HHWind.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/dependencies/InflowWind/FFWind.f90 -o Obj_win32/FFWind.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/dependencies/InflowWind/HAWCWind.f90 -o Obj_win32/HAWCWind.obj -J Obj_win
32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/dependencies/InflowWind/FDWind.f90 -o Obj_win32/FDWind.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/dependencies/InflowWind/CTWind.f90 -o Obj_win32/CTWind.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/dependencies/InflowWind/UserWind.f90 -o Obj_win32/UserWind.obj -J Obj_win
32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/dependencies/InflowWind/InflowWindMod.f90 -o Obj_win32/InflowWindMod.obj
-J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/AD_archive_compiling/Source/SharedTypes.f90 -o Ob
j_win32/SharedTypes.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/AD_archive_compiling/Source/AeroMods.f90 -o Obj_w
in32/AeroMods.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/AD_archive_compiling/Source/GenSubs.f90 -o Obj_wi
n32/GenSubs.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/AD_archive_compiling/Source/AeroSubs.f90 -o Obj_w
in32/AeroSubs.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/Users/Phillip.harris/Downloads/FAST/AD_archive_compiling/Source/AeroDyn.f90 -o Obj_wi
n32/AeroDyn.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/FFTMod.f90 -o Obj_win32/FFTMod.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/HydroCalc.f90 -o Obj_win32/HydroCalc.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-le
ngth-none -c C:/FAST/Source/fftpack.f -o Obj_win32/fftpack.obj -J Obj_win32
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/FAST_Mods.f90 -o Obj_win32/FAST_Mods.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/Noise.f90 -o Obj_win32/Noise.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/FAST_IO.f90 -o Obj_win32/FAST_IO.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/FAST.f90 -o Obj_win32/FAST.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/FAST_Lin.f90 -o Obj_win32/FAST_Lin.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/FAST2ADAMS.f90 -o Obj_win32/FAST2ADAMS.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/PitchCntrl_ACH.f90 -o Obj_win32/PitchCntrl_ACH.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/UserSubs.f90 -o Obj_win32/UserSubs.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/UserVSCont_KP.f90 -o Obj_win32/UserVSCont_KP.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/AeroCalc.f90 -o Obj_win32/AeroCalc.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/SetVersion.f90 -o Obj_win32/SetVersion.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -I -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
-c C:/FAST/Source/FAST_Prog.f90 -o Obj_win32/FAST_Prog.obj -J Obj_win32
Warning: Nonexistent include directory “-O2”
gfortran -O2 -m32 -fbacktrace -I Obj_win32 -o ./FAST_gwin32.exe
Obj_win32/SingPrec.obj Obj_win32/SysGnuWin.obj Obj_win32/NWTC_IO.obj Obj_win32/NWTC_Num
.obj Obj_win32/ModMesh.obj Obj_win32/NWTC_Aero.obj Obj_win32/NWTC_Library.obj Obj_win32
/SharedInflowDefs.obj Obj_win32/HHWind.obj Obj_win32/FFWind.obj Obj_win32/HAWCWind.obj
Obj_win32/FDWind.obj Obj_win32/CTWind.obj Obj_win32/UserWind.obj Obj_win32/InflowWindMod
.obj Obj_win32/SharedTypes.obj Obj_win32/AeroMods.obj Obj_win32/GenSubs.obj Obj_win32/A
eroSubs.obj Obj_win32/AeroDyn.obj Obj_win32/FFTMod.obj Obj_win32/HydroCalc.obj Obj_win3
2/fftpack.obj Obj_win32/FAST_Mods.obj Obj_win32/Noise.obj Obj_win32/FAST_IO.obj Obj_win
32/FAST.obj Obj_win32/FAST_Lin.obj Obj_win32/FAST2ADAMS.obj Obj_win32/PitchCntrl_ACH.obj
Obj_win32/UserSubs.obj Obj_win32/UserVSCont_KP.obj Obj_win32/AeroCalc.obj Obj_win32/Se
tVersion.obj Obj_win32/FAST_Prog.obj

I believe that the ‘-02’ fault is something I may need to talk to the mingw creators about.

However as I understand it the compile has created new files. However I cannot see these new files. When viewing the files in windows explorer the ‘last modified’ data is the same as it was. Is this correct?

I don’t think I have a complete grasp of how this compile has worked.

Any explanation offered would be greatly received.

Phillip

Hi, Phillip.

It looks like either you didn’t put the “$(INTER_DIR)” after the -I in your compiling rules or you changed $(INTER_DIR) so that it is empty. On Windows, the messages should start with this:

gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none

When you omit that part, it thinks -O2 is a directory instead of a optimization flag.

Bonnie,
I this has solved it. I was half right. I had $(Inter_Dir) in lower case instead of $(INTER_DIR). I hadn’t spotted this until now, and I also didn’t realise that this was case sensitive. I have just re-run the compiler and now get the following: -


C:\FAST\Compiling>mingw32-make
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-len
gth-none -c C:/FAST/Source/PitchCntrl_ACH.f90 -o Obj_win32/PitchCntrl_ACH.obj -J Obj_win32
gfortran -O2 -m32 -fbacktrace -I Obj_win32 -o ./FAST_gwin32.exe
Obj_win32/SingPrec.obj Obj_win32/SysGnuWin.obj Obj_win32/NWTC_IO.obj Obj_win32/NWTC_Num
.obj Obj_win32/ModMesh.obj Obj_win32/NWTC_Aero.obj Obj_win32/NWTC_Library.obj Obj_win32
/SharedInflowDefs.obj Obj_win32/HHWind.obj Obj_win32/FFWind.obj Obj_win32/HAWCWind.obj
Obj_win32/FDWind.obj Obj_win32/CTWind.obj Obj_win32/UserWind.obj Obj_win32/InflowWindMod
.obj Obj_win32/SharedTypes.obj Obj_win32/AeroMods.obj Obj_win32/GenSubs.obj Obj_win32/A
eroSubs.obj Obj_win32/AeroDyn.obj Obj_win32/FFTMod.obj Obj_win32/HydroCalc.obj Obj_win3
2/fftpack.obj Obj_win32/FAST_Mods.obj Obj_win32/Noise.obj Obj_win32/FAST_IO.obj Obj_win
32/FAST.obj Obj_win32/FAST_Lin.obj Obj_win32/FAST2ADAMS.obj Obj_win32/PitchCntrl_ACH.obj
Obj_win32/UserSubs.obj Obj_win32/UserVSCont_KP.obj Obj_win32/AeroCalc.obj Obj_win32/Se
tVersion.obj Obj_win32/FAST_Prog.obj


I think I am on the way there now!

I will now try to run FAST and make sure it all works then get onto the pitching routine.

Kind regards

Phillip

Hi Bonnie,

I am getting a similar error as Phillip got, which is-

make: *** No rule to make target ‘SingPrec.obj’, needed by ‘FAST_gwin32.exe’. Stop.

I am using Cygwin to compile FAST 7.

I have checked all the required versions for the NWTC library and others; I also put in the -I $(INTER_DIR) option like you suggested. I kept getting the same error.

Here are the changes I made to the makefile.

[code] # 32-bit or 64-bit?
BITS = 32
#BITS = 64

Location of source files for FAST, AeroDyn, InflowWind, and the NWTC Library.

You will probably need to change these for your system.

ifeq ($(OS),Windows_NT)
NWTC_LIB_DIR= C:/Users/Shubhankar/Desktop/Thesis_Stuff/Aero_MBD/NWTC_Library/Source
AERODYN_DIR = C:/Users/Shubhankar/Desktop/Thesis_Stuff/Aero_MBD/AeroDyn/Source
WIND_DIR = C:/Users/Shubhankar/Desktop/Thesis_Stuff/Aero_MBD/InflowWind/Source
FAST_DIR = C:/Users/Shubhankar/Desktop/Thesis_Stuff/Aero_MBD/FAST_7/Source
else
NWTC_LIB_DIR = $(HOME)/PC/CAEtools/Miscellaneous/NWTC_Library/trunk/source
AERODYN_DIR = $(HOME)/PC/CAEtools/simulators/AeroDyn/SVNdirectory/trunk/Source
WIND_DIR = $(HOME)/PC/CAEtools/simulators/InflowWind/SVNdirectory/trunk/Source
FAST_DIR = $(HOME)/PC/CAEtools/simulators/FAST/SVNdirectory/trunk/Source

endif

Name of compiler to use and flags to use.

FC = gfortran
FFLAGS = -O2 -m$(BITS) -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none
LDFLAGS = -O2 -m$(BITS) -fbacktrace

other useful gfortran options:

-fdefault-real-8 -fcheck=bounds -std=f2003 -O0 -v

Precision.

Use “SingPrec” for single precision and “DoubPrec” for double precision. You may also need to change an option switch to make constants DP.

PREC = SingPrec

Destination and RootName for executable

OUTPUT_NAME = FAST
DEST_DIR = .
[/code]

[code]%.obj: %.f90
$(FC) -I $(INTER_DIR) $(FFLAGS) -c $< -o $(INTER_DIR)/$@ -J $(INTER_DIR)

fftpack.obj: fftpack.f
$(F77) -I $(INTER_DIR) $(FFLAGS) -c $< -o $(INTER_DIR)/$@ -J $(INTER_DIR)
[/code]

Any help would be much appreciated.

Thanks,
Shubhankar Kulkarni

Hi, Shubhankar.

If you’re using Cygwin, you’ll need to set the paths to your source files a little differently. You changed the part of the IF statement that gets used for Windows.

I’d change

[code]ifeq ($(OS),Windows_NT)
NWTC_LIB_DIR= C:/Users/Shubhankar/Desktop/Thesis_Stuff/Aero_MBD/NWTC_Library/Source
AERODYN_DIR = C:/Users/Shubhankar/Desktop/Thesis_Stuff/Aero_MBD/AeroDyn/Source
WIND_DIR = C:/Users/Shubhankar/Desktop/Thesis_Stuff/Aero_MBD/InflowWind/Source
FAST_DIR = C:/Users/Shubhankar/Desktop/Thesis_Stuff/Aero_MBD/FAST_7/Source
else
NWTC_LIB_DIR = $(HOME)/PC/CAEtools/Miscellaneous/NWTC_Library/trunk/source
AERODYN_DIR = $(HOME)/PC/CAEtools/simulators/AeroDyn/SVNdirectory/trunk/Source
WIND_DIR = $(HOME)/PC/CAEtools/simulators/InflowWind/SVNdirectory/trunk/Source
FAST_DIR = $(HOME)/PC/CAEtools/simulators/FAST/SVNdirectory/trunk/Source

endif
[/code] to this:

[code]
NWTC_LIB_DIR= C:/Users/Shubhankar/Desktop/Thesis_Stuff/Aero_MBD/NWTC_Library/source
AERODYN_DIR = C:/Users/Shubhankar/Desktop/Thesis_Stuff/Aero_MBD/AeroDyn/Source
WIND_DIR = C:/Users/Shubhankar/Desktop/Thesis_Stuff/Aero_MBD/InflowWind/Source
FAST_DIR = C:/Users/Shubhankar/Desktop/Thesis_Stuff/Aero_MBD/FAST_7/Source

[/code] (note I just got rid of the IF statement and changed the case of the NWTC_LIbrary “source” directory.

Hello Bonnie,

Thanks for your quick reply.

I made the changes like you suggested, Cygwin gives me the same error

make: *** No rule to make target ‘SingPrec.obj’, needed by ‘FAST_gwin32.exe’. Stop.

Also, when I extract NWTC_Lib_v1.07.00b-mlb.exe, “S” is upper case for the ‘Source’ folder. I also tried with NWTC_Lib_v1.07.02a-mlb.exe version of the library, I get the same error.

Is there anything else that I could have missed here?

Thanks,
Shubhankar

Hi Bonnie,

Since gFortran on Cygwin wasn’t helping, I am using MinGW now. I get a different error now which is as follows:

$ mingw32-make
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/NWTCLibrary/SingPrec.f90 -o Obj_win32/SingPrec.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/NWTCLibrary/SysGnuWin.f90 -o Obj_win32/SysGnuWin.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/NWTCLibrary/NWTC_IO.f90 -o Obj_win32/NWTC_IO.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/NWTCLibrary/NWTC_Num.f90 -o Obj_win32/NWTC_Num.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/NWTCLibrary/ModMesh.f90 -o Obj_win32/ModMesh.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/NWTCLibrary/NWTC_Aero.f90 -o Obj_win32/NWTC_Aero.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/NWTCLibrary/NWTC_Library.f90 -o Obj_win32/NWTC_Library.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/InflowWind/SharedInflowDefs.f90 -o Obj_win32/SharedInflowDefs.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/InflowWind/HHWind.f90 -o Obj_win32/HHWind.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/InflowWind/FFWind.f90 -o Obj_win32/FFWind.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/InflowWind/HAWCWind.f90 -o Obj_win32/HAWCWind.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/InflowWind/FDWind.f90 -o Obj_win32/FDWind.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/InflowWind/CTWind.f90 -o Obj_win32/CTWind.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/InflowWind/UserWind.f90 -o Obj_win32/UserWind.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/InflowWind/InflowWindMod.f90 -o Obj_win32/InflowWindMod.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/AeroDyn/SharedTypes.f90 -o Obj_win32/SharedTypes.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/AeroDyn/AeroMods.f90 -o Obj_win32/AeroMods.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/AeroDyn/GenSubs.f90 -o Obj_win32/GenSubs.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/AeroDyn/AeroSubs.f90 -o Obj_win32/AeroSubs.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/AeroDyn/AeroDyn.f90 -o Obj_win32/AeroDyn.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/FFTMod.f90 -o Obj_win32/FFTMod.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/HydroCalc.f90 -o Obj_win32/HydroCalc.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/fftpack.f -o Obj_win32/fftpack.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/FAST_Mods.f90 -o Obj_win32/FAST_Mods.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/Noise.f90 -o Obj_win32/Noise.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/FAST_IO.f90 -o Obj_win32/FAST_IO.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/FAST.f90 -o Obj_win32/FAST.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/FAST_Lin.f90 -o Obj_win32/FAST_Lin.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/FAST2ADAMS.f90 -o Obj_win32/FAST2ADAMS.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/PitchCntrl_ACH.f90 -o Obj_win32/PitchCntrl_ACH.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/UserSubs.f90 -o Obj_win32/UserSubs.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/UserVSCont_KP.f90 -o Obj_win32/UserVSCont_KP.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/AeroCalc.f90 -o Obj_win32/AeroCalc.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/SetVersion.f90 -o Obj_win32/SetVersion.obj -J Obj_win32
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -finit-local-zero -fno-automatic -ffree-line-length-none -c C:/FAST/FAST/FAST_Prog.f90 -o Obj_win32/FAST_Prog.obj -J Obj_win32
gfortran -O2 -m32 -fbacktrace -I Obj_win32 -o ./FAST_gwin32.exe
Obj_win32/SingPrec.obj Obj_win32/SysGnuWin.obj Obj_win32/NWTC_IO.obj Obj_win32/NWTC_Num.obj Obj_win32/ModMesh.obj Obj_win32/NWTC_Aero.obj Obj_win32/NWTC_Library.obj Obj_win32/SharedInflowDefs.obj Obj_win32/HHWind.obj Obj_win32/FFWind.obj Obj_win32/HAWCWind.obj Obj_win32/FDWind.obj Obj_win32/CTWind.obj Obj_win32/UserWind.obj Obj_win32/InflowWindMod.obj Obj_win32/SharedTypes.obj Obj_win32/AeroMods.obj Obj_win32/GenSubs.obj Obj_win32/AeroSubs.obj Obj_win32/AeroSubs.obj Obj_win32/AeroDyn.obj Obj_win32/FFTMod.obj Obj_win32/HydroCalc.obj Obj_win32/fftpack.obj Obj_win32/FAST_Mods.obj Obj_win32/Noise.obj Obj_win32/FAST_IO.obj Obj_win32/FAST.obj Obj_win32/FAST_Lin.obj Obj_win32/FAST2ADAMS.obj Obj_win32/PitchCntrl_ACH.obj Obj_win32/UserSubs.obj Obj_win32/UserVSCont_KP.obj Obj_win32/AeroCalc.obj Obj_win32/SetVersion.obj Obj_win32/FAST_Prog.obj
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x25e0): multiple definition of __aerosubs_MOD_checkrcomp' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x25e0): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x2b60): multiple definition of __aerosubs_MOD_aerodyn_terminate’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x2b60): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x36f0): multiple definition of __aerosubs_MOD_windazimuthzero' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x36f0): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x3720): multiple definition of __aerosubs_MOD_xphi’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x3720): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x3b90): multiple definition of __aerosubs_MOD_idubfact' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x3b90): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x3d50): multiple definition of __aerosubs_MOD_hfunc’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x3d50): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x4070): multiple definition of __aerosubs_MOD_phis' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x4070): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x4410): multiple definition of __aerosubs_MOD_fgamma’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x4410): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x4600): multiple definition of __aerosubs_MOD_gaussj' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x4600): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x4a60): multiple definition of __aerosubs_MOD_matinv’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x4a60): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x4dc0): multiple definition of __aerosubs_MOD_lmatrix' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x4dc0): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x5220): multiple definition of __aerosubs_MOD_abprecor’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x5220): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x5320): multiple definition of __aerosubs_MOD_vindinf' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x5320): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x55b0): multiple definition of __aerosubs_MOD_infdist’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x55b0): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x5a60): multiple definition of __aerosubs_MOD_dyndebug' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x5a60): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x5f70): multiple definition of __aerosubs_MOD_infupdt’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x5f70): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x6020): multiple definition of __aerosubs_MOD_infinit' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x6020): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x65f0): multiple definition of __aerosubs_MOD_getphilq’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x65f0): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x67b0): multiple definition of __aerosubs_MOD_getrm' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x67b0): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x69a0): multiple definition of __aerosubs_MOD_inflow’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x69a0): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x6a50): multiple definition of __aerosubs_MOD_sat' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x6a50): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x6aa0): multiple definition of __aerosubs_MOD_clcd’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x6aa0): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x74b0): multiple definition of __aerosubs_MOD_vortex' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x74b0): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x78c0): multiple definition of __aerosubs_MOD_separ’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x78c0): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x8a80): multiple definition of __aerosubs_MOD_attach' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x8a80): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x96e0): multiple definition of __aerosubs_MOD_beddoes’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x96e0): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x9d00): multiple definition of __aerosubs_MOD_bedwrt' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x9d00): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0xa4d0): multiple definition of __aerosubs_MOD_beddat’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0xa4d0): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0xb2e0): multiple definition of __aerosubs_MOD_bedupdate' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0xb2e0): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0xf010): multiple definition of __aerosubs_MOD_bedinit’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0xf010): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0xfbd0): multiple definition of __aerosubs_MOD_vnmod' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0xfbd0): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0xfcb0): multiple definition of __aerosubs_MOD_diskvel’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0xfcb0): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0xfe80): multiple definition of __aerosubs_MOD_gettwrsectprop' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0xfe80): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x10200): multiple definition of __aerosubs_MOD_gettwrinfluence’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x10200): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x10760): multiple definition of __aerosubs_MOD_ad_windvelocitywithdisturbance' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x10760): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x10b10): multiple definition of __aerosubs_MOD_getprandtlloss’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x10b10): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x10b80): multiple definition of __aerosubs_MOD_gettiploss' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x10b80): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x10cc0): multiple definition of __aerosubs_MOD_getreynolds’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x10cc0): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x10ce0): multiple definition of __aerosubs_MOD_axind' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x10ce0): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x111d0): multiple definition of __aerosubs_MOD_vinderr’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x111d0): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x111f0): multiple definition of __aerosubs_MOD_vind' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x111f0): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x11d20): multiple definition of __aerosubs_MOD_elemfrc’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x11d20): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x12470): multiple definition of __aerosubs_MOD_readtwr' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x12470): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x12510): multiple definition of __aerosubs_MOD_readfl’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x12510): first defined here
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x154d0): multiple definition of __aerosubs_MOD_adout' Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x154d0): first defined here Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x18e00): multiple definition of __aerosubs_MOD_ad_getinput’
Obj_win32/AeroSubs.obj:AeroSubs.f90:(.text+0x18e00): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgfortran.dll.a when searching for -lgfortran
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgfortran.a when searching for -lgfortran
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgfortran.a when searching for -lgfortran
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgfortran.dll.a when searching for -lgfortran
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgfortran.a when searching for -lgfortran
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgfortran.a when searching for -lgfortran
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgfortran.dll.a when searching for -lgfortran
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgfortran.a when searching for -lgfortran
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgfortran.dll.a when searching for -lgfortran
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgfortran.a when searching for -lgfortran
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -lgfortran
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc_s.dll.a when searching for -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc_s.dll.a when searching for -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc_s.dll.a when searching for -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc_s.dll.a when searching for -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libquadmath.dll.a when searching for -lquadmath
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libquadmath.a when searching for -lquadmath
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libquadmath.a when searching for -lquadmath
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libquadmath.dll.a when searching for -lquadmath
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libquadmath.a when searching for -lquadmath
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libquadmath.a when searching for -lquadmath
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libquadmath.dll.a when searching for -lquadmath
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libquadmath.a when searching for -lquadmath
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libquadmath.dll.a when searching for -lquadmath
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libquadmath.a when searching for -lquadmath
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -lquadmath
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/libm.a when searching for -lm
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/libm.a when searching for -lm
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/libm.a when searching for -lm
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -lm
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc_s.dll.a when searching for -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc_s.dll.a when searching for -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc_s.dll.a when searching for -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc_s.dll.a when searching for -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/libcygwin.a when searching for -lcygwin
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/libcygwin.a when searching for -lcygwin
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/libcygwin.a when searching for -lcygwin
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -lcygwin
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -ladvapi32
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -lshell32
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -luser32
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -lkernel32
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc_s.dll.a when searching for -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc_s.dll.a when searching for -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc_s.dll.a when searching for -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc_s.dll.a when searching for -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -lgcc_s
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2//libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/libgcc.a when searching for -lgcc
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/…/…/…/…/x86_64-pc-cygwin/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status
makefile:216: recipe for target ‘FAST_gwin32.exe’ failed
mingw32-make: *** [FAST_gwin32.exe] Error 1

Could you please guide me how to debug this one? I am attaching the makefile herewith.

Thanks,
Shubhankar
makefile.txt (7.53 KB)

Hi Bonnie,

Thanks for your help earlier. There was a small error in my makefile, I don’t know how, but AeroSubs.f90 was defined twice in the source files list.

FAST is getting compiled now successfully with MinGW; however it gives error on Cygwin. Probably Cygwinx64 is having a few compatibility issues here.

Thank you,
Shubhankar

Hi, Shubhankar.

Glad you have a way to compile now. I don’t have access to Cygwin so I can’t be much help with it… But from the error message, it either can’t find SingPrec.f90 or figure out how to make SingPrec.obj from SingPrec.f90.

I sometimes use this code to help me debug a makefile (it just prints values for variables so I know the variables are set properly):# use this for "all" for debugging: print variables: all: ; $(info $$ALL_OBJS is [${ALL_OBJS}]) echo debugging You can replace ALL_OBJS with other variables you want to check. Maybe that will help you figure out what Cygwin is doing.

P.S. I guess you didn’t need to take that IF statement out… A few years ago I’d helped someone else who was using Cygwin, and he had to hard-code the $OS variable to WINDOWS_NT to get it to work. But it looks like yours is going through the correct branch if it’s setting the other system-specific commands properly.

Hello Bonnie,

Thank you very much for your suggestions. I will certainly try it out with Cygwin sometime soon, and will update this post if I’m successful.

Warm regards,
Shubhankar

Hi Bonnie,

I am re-opening this topic because I’m facing some difficulties trying to compile FAST v8.
I haven’t found any topic about compiling Fast v8 with gfortran, and it seems that the makefile is quite different than in v7. I’ve tested some suggestions you proposed for debugging the compilation, but it didn’t work well.
I’m using the LAPACK and BLAS libraries found here ( http://icl.cs.utk.edu/lapack-for-windows/lapack/index.html#libraries ), but for some reason, it appears that I have some troubles when creating SingPrec.Obj

[code]C:\Users\288940\Documents\Softwares\FAST\Compiling>mingw32-make clean
del Obj_win32\.mod Obj_win32\.obj
Impossible de trouver C:\Users\288940\Documents\Softwares\FAST\Compiling\Obj_wi
32*.mod

C:\Users\288940\Documents\Softwares\FAST\Compiling>mingw32-make
gfortran -I Obj_win32 -O2 -m32 -fbacktrace -ffree-line-length-none -x f95-cpp-i
put -c C:/Users/288940/Documents/Softwares/FAST/Source/dependencies/NWTC_Librar
/SingPrec.f90 -o Obj_win32/SingPrec.obj -J Obj_win32 -B Obj_win32
process_begin: CreateProcess(NULL, gfortran -I Obj_win32 -O2 -m32 -fbacktrace -
free-line-length-none -x f95-cpp-input -c C:/Users/288940/Documents/Softwares/F
ST/Source/dependencies/NWTC_Library/SingPrec.f90 -o Obj_win32/SingPrec.obj -J O
j_win32 -B Obj_win32, …) failed.
make (e=2): Le fichier spÚcifiÚ est introuvable.
makefile:289: recipe for target ‘SingPrec.obj’ failed
mingw32-make: *** [SingPrec.obj] Error 2[/code]

Could you please help me with my compilation problem ? I’m attaching the makefile.

Thanks very much in advance,

Aurelien
makefile.txt (19.1 KB)

Hi, Aurelien.

Have you tried to compile that file outside the makefile? Type this line in the command prompt and see what it says: gfortran -I Obj_win32 -O2 -m32 -fbacktrace -ffree-line-length-none -x f95-cpp-input -c C:/Users/288940/Documents/Softwares/FAST/Source/dependencies/NWTC_Library/SingPrec.f90 -o Obj_win32/SingPrec.obj -J Obj_win32 -B Obj_win32
(Note that this assumes the makefile actually created the Obj_win32 folder. If it didn’t, you’ll have to create that directory first.)

Hi Bonnie,

I’ve tried to compile the file outside the makefile with gfortran.exe as you said. It didn’t worked but thanks to that, I realized that I was having some troubles with environment path…
I corrected these problems, but after I encountered a segmentation fault, exactly like in this topic : [url]http://forums.nrel.gov/t/compiling-fast-v8-using-gfortran/953/5]
I tried the solutions proposed there, but it has not solved my segmentation fault problems.

Thus I gave up gfortran and I tried to compile with IVF and microsoft visual studio. It worked perfectly.

I am not really experimenced with gfortran compiler, thus I can’t tell you where the error in my compilation was located…

Thanks for your fast reply,

Best regards,

Aurelien