OpenFAST / openfast

Main repository for the NREL-supported OpenFAST whole-turbine and FAST.Farm wind farm simulation codes.
http://openfast.readthedocs.io
Apache License 2.0
690 stars 457 forks source link

Can't generate openfast_x64.exe #346

Closed unverozkol closed 5 years ago

unverozkol commented 5 years ago

Bug description Having successfully building "discon.sln" as described in online document 5.2.3->(2) I tried to build "fast.sln" as described in online document 5.2.3->(3). It builds with no errors, only some warnings. But there is no "openfast_x64.exe" file is produced in the "..build/bin" folder or anywhere else. I have repeated this couple of times by closing/opening MSVS-19. But no avail.

My system Windows 10 Enterprise, 64bit running MSVS-19 with INTEL parallel studio XE 2019

Here is the output of Fast.sln building process 1>------ Build started: Project: FAST_Registry, Configuration: Release_Double x64 ------ 1>data.c 1>gen_c_types.c 1>gen_module_files.c 1>C:\FAST\OpenFAST\modules-local\openfast-registry\src\gen_module_files.c(2370,19): warning C4267: '=': conversion from 'size_t' to 'int', possible loss of data 1>misc.c 1>my_strtok.c 1>registry.c 1>reg_parse.c 1>C:\FAST\OpenFAST\modules-local\openfast-registry\src\gen_module_files.c(2382,24): warning C4267: '=': conversion from 'size_t' to 'int', possible loss of data 1>sym.c 1>symtab_gen.c 1>type.c 1>C:\FAST\OpenFAST\modules-local\openfast-registry\src\reg_parse.c(272,7): warning C4102: 'normal': unreferenced label 1>C:\FAST\OpenFAST\modules-local\openfast-registry\src\type.c(187,1): warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data 1>Generating code 1>Previous IPDB not found, fall back to full compilation. 1>All 74 functions were compiled because no usable IPDB/IOBJ from previous compilation was found. 1>Finished generating code 1>FAST_Registry.vcxproj -> C:\FAST\OpenFAST\vs-build\Registry....\build\bin\Registry.exe 1>Done building project "FAST_Registry.vcxproj". 2>------ Build started: Project: MAP_dll, Configuration: Release_Double x64 ------ 2>Performing Custom Build Tools 2>====================================================================== 2> 2>----- FAST Registry -------------- 2>---------------------------------------------------------- 2>input file: ....\modules-ext\map\src\MAP_Registry.txt 2>opening ....\modules-local\nwtc-library\src/Registry_NWTC_Library.txt 2>generating ....\build\types-files/MAP_Types.f90 2>CUSTOMBUILD : Registry warning : derived data type Ver of type progdesc is not passed through C interface 2>CUSTOMBUILD : Registry warning : derived data type PtFairDisplacement of type meshtype is not passed through C interface 2>CUSTOMBUILD : Registry warning : derived data type ptFairleadLoad of type meshtype is not passed through C interface 2> 2>Registry for MAP completed. 2>  2>====================================================================== 2>bstraux.c 2>C:\FAST\OpenFAST\modules-ext\map\src\bstring\bstraux.c(1004,26): warning C4267: 'function': conversion from 'size_t' to 'int', possible loss of data 2>bstrlib.c 2>C:\FAST\OpenFAST\modules-ext\map\src\bstring\bstraux.c(1017,13): warning C4267: '=': conversion from 'size_t' to 'int', possible loss of data 2>dpmpar.c 2>enorm.c 2>enorm_u.c 2>lmder.c 2>lmpar.c 2>qrfac.c 2>qrsolv.c 2>freedata.c 2>jacobian.c 2>lineroutines.c 2>mapapi.c 2>maperror.c 2>mapinit.c 2>numeric.c 2>outputstream.c 2>residual.c 2>simclist.c 2>C:\FAST\OpenFAST\modules-ext\map\src\bstring\bstrlib.c(367,32): warning C4267: 'function': conversion from 'size_t' to 'int', possible loss of data 2>lmroutines.cc 2> Creating library ....\build\bin\MAP_x64.lib and object ....\build\bin\MAP_x64.exp 2>Generating code 2>Previous IPDB not found, fall back to full compilation. 2>All 293 functions were compiled because no usable IPDB/IOBJ from previous compilation was found. 2>Finished generating code 2>MAP_dll.vcxproj -> C:\FAST\OpenFAST\vs-build\MAPlib....\build\bin\MAP_x64.dll 2>Done building project "MAP_dll.vcxproj". ========== Build: 2 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========

Here is what is inside of BUILD/BIN directory build_bin

As seen there is no "openfast_x64.exe". Any clues, why?

OpenFAST Version OpenFAST is cloned from GIT at the end of sept 2019

bjonkman commented 5 years ago

It looks like you maybe told it to build only the "MAP_dll" project with its dependencies and not the entire solution file (which contains several more projects). Try selecting Build -> Build Solution instead.

unverozkol commented 5 years ago

Dear Bonnie; This is how I exactly done it. Build --> Build Solution. if it helps, here is how my project configuration looks like: there is FAST_Registry and MAP_dll Am I missing some files in my project? If so, How could I get them from git?

config_man

bjonkman commented 5 years ago

Your solution file should also show FAST and FAST_Lib projects.

FAST and FAST_Lib should appear in the Solution Explorer window with source files the way FAST appears in the screen shot below. (You probably won't have "Advisor Results" in your solution file like I do, but that is fine.)

image

unverozkol commented 5 years ago

Dear Bonnie, Your third suggestion does the trick. When I open Fast.sln, for some reason Source files were not loaded. When I Reload Project, they appeared now. Thanks alot.

kumaraeedara commented 4 years ago

In the configuration manager Platform of "FAST_Registry" always remain as Win32 even when x64 is chosen for Active Solution Platform. Allows to change manually though. Any particular reason?

ConfigurationManager

andrew-platt commented 4 years ago

The FAST_Registy is used to generate the _Types.f90 files which are then compiled into OpenFAST. The code created by the FAST_Registry.exe is the same regardless of which memory addressing is used. So for simplicity we set it to 32 bit.

kumaraeedara commented 4 years ago

Ok.. Thanks.