Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
OpenFOAM自带wmake编译工具,具体可以参考 http://card.weibo.com/article/h5/s#cid=230418bc7c914f0102v04p&vid=0&extparam=&from=1110006030&wm=0&ip=129.107.80.206
OpenFOAM
wmake
@队长别开枪 我已经编译过了,还是不能一行行调试
@dongdong 不知道怎么用wmake进行断点调试啊,我一般都是使用Info << << endl;看输出的值是否异常。
Info << << endl;
@队长别开枪 你的意思是在代码里面加"Info << << endl;",再运行求解器比如icoFoam?
@dongdong 对的,Info << #你想输出的变量# << endl;,也可能有更高级的工具,坐等坛子里的大神来回答:happy:
Info << #你想输出的变量# << endl;
编译debug版本,设置断点,用gdb调试。
@wwzhao 怎么编译debug版本?
@dongdong http://openfoamwiki.net/index.php/HowTo_debugging#FULLDEBUG_-_libraries
@wwzhao “Find out from the printed stack trace which files contain the functions that crash. Copy these into your local directory.”他这个需要把所有的头文件或代码加到我的工作目录中,太多了啊,OF的头文件一环套一环的,有没有更好的方法?
@dongdong 建议编译一个完整的debug版本,export WM_COMPILE_OPTION=Debug 设置环境变量然后编译。
export WM_COMPILE_OPTION=Debug
@wwzhao 已经在重新编译中...麻烦一下能不能举个例子,你是怎么一步步调试自编求解器的代码(头文件和库不在工作目录,经常找不到头文件)?
@dongdong 要调试还是编译?听你说的好像编译还没通过?
@wwzhao 编译通过了,以icoFoam举例子,我复制到user下(自编求解器所在工作目录),编译成功后,应该怎么调试呢?(vscode一直提示“找不到头文件”,这些头文件包括fvCFD,setRootCase之类的,因为像fvCFD头文件也包括了大量其它头文件,我不可能把所有这些头文件都放到工作目录)
@dongdong 用gdb,具体用法可以查gdb的使用手册,参考 http://www.tfd.chalmers.se/~hani/kurser/OS_CFD_2008/debugging.pdf
@wwzhao 谢谢BZ!我试试~