关于 openfoam 自定义求解器的编译主要是使用
wmake来进行编译。
它主要通过一个 files 文件还有一个 options 文件来进行配置。在 files 里配置源文件和输出的可执行文件目录,在 options 文件里主要进行配置头文件目录和要连接使用到的库目录。在执行了
wmake命令后就可以看到一个调用了 g++ 的命令行包括了很多参数,为了可以更方便的编译,在这里就可以配置xmake.lua文件来使用
xmake来进行编译。
所以只需要配置好头文件目录和库目录那么就可以使用 xmake 来编译。
使用 xmake 编译 openfoam 自定义求解器的一个示例为:
Example:
add_rules("mode.debug", "mode.release")
add_includedirs("/usr/lib/openfoam/openfoam2312/src/finiteVolume/lnInclude")
add_includedirs("/usr/lib/openfoam/openfoam2312/src/meshTools/lnInclude")
add_includedirs("/usr/lib/openfoam/openfoam2312/src/OpenFOAM/lnInclude")
add_includedirs("/usr/lib/openfoam/openfoam2312/src/OSspecific/POSIX/lnInclude")
target("helloworld")
add_cxflags("-DOPENFOAM=2312 -DWM_DP -DWM_LABEL_SIZE=32 -DNoRepository -g")
add_files("./helloWorld.cpp")
add_linkdirs("/usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/lib")
add_links("meshTools")
add_links("finiteVolume")
add_links("OpenFOAM")
add_links("dl")
add_links("m")
target_end()openfoam2312:~/helloWorld/
也是可以正常调试的
运行结果
hljs.highlightAll();