FAST调试
NREL FAST的调试一直存在问题,关键是不知道怎么设置选项,查阅了Visual Studio和一些基本知识整理了 NREL项目的调试方法。
fortran工作路径问题
工作路径对于任何的可执行文件都很重要。 当然事先可能得了解一下软件编译链接的过程(即编写源代码–调用编译器编译源代码– >调用链接器连接相关代码块生成可执行文件–>运行可执行文件)(IDE隐藏了上述过程)
- 如果不带任何路径,则被认为是当前路径(working directory)。
- 如果带相对路径,则以当前路径为基准。
- 通过命令行执行,当前路径一般在提示符上(或pwd命令查看)
- 直接双击,当前路径在exe所在的文件夹。
- 通过IDE方式运行,当前路径一般在工程所在文件夹
- 一些IDE还允许设置当前路径(只对IDE方式运行有效)。
- 右键exe名字也是可以指定运行路径的(这样就可以加载对应的配置文件)
比如:
代码层级改变文件路径
在程序中可以通过一些手段,动态的更改当前路径。
- IVF: changeDirQQ
- gfortran: ChDir
也可以通过一些手段,获得当前路径,
- IVF/gforran: GetCWD
program testDir
Implicit none
CHARACTER(len=512) :: working_path
call GET_COMMAND_ARGUMENT(0 , working_path);
write(*,'(a,/,a)') 'exe path: ', trim(working_path);
call GETCWD(working_path)
write(*,'(a,/,a)') 'Working Directory: ', trim(working_path);
end program testDir
输出:<br>
exe path:
D:\testCWD\Debug\test_cwd.exe
working directory:
D:\testCWD
调试FAST
最关键的是一个对应两个设置
- 一个对应指的是第二步的Linker的output File的exe名字和第三步的General底下的TargetName对应上
- 两个设置是指在Debuging对Command Arguments和Working Directory的设置。Command Argument指定文件名字 Working Directory指定文件路径。
设置完就可以开始调试了。