自定义湍流模型编译成功,但是有dlopen error 的Warning, 初步解决,但想求教根本原因
-
最近编译了最新的SOWFA求解器,编译过程中一切正常,没有报错;但是在运行tutorial算例时,blockMesh出现了以下警告:
Create time
--> FOAM Warning :
From function dlOpen(const fileName&, const bool)
in file POSIX.C at line 1179
dlopen error : /home/yhan/OpenFOAM/yhan-2.4.0/SOWFA/lib/linux64GccDPOpt/libSOWFAincompressibleLESModels.so: undefined symbol: _ZTIN4Foam14incompressible9LESModels11GenEddyViscE
--> FOAM Warning :
From function dlLibraryTable::open(const fileName&, const bool)
in file db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C at line 99
could not load "libSOWFAincompressibleLESModels.so"于是去system/controlDict里面将“libSOWFAincompressibleLESModels.so” comment后,运行不再报警。
请问群里的各位专家,这个原因是什么呢,为什么commet掉controlDict里的libs项后,问题就解决了呢?
最近重新拾起OpenFOAM,“熟悉又陌生”,还往各位专家赐教,非常感谢!
-
你加这个lib的时候,运行的时候需要挂这个lib,但是你这个lib还没有编译好,所以就报错,去掉就好了
问题的根本是你没有把这个lib编译出来
-
@李东岳 谢谢李老师的解答,不过我检查了一下,编译lib的时候都通过了,如下:
而且在文件夹里能找到相应的libs, 如下:
仍出现上述Warning时运行的时候没挂上lib吗,麻烦能指导下,如何解决这个问题吗~~ 感激
-
@hy1112006 在 自定义湍流模型编译成功,但是有dlopen error 的Warning, 初步解决,但想求教根本原因 中说:
/home/yhan/OpenFOAM/yhan-2.4.0/SOWFA/lib/linux64GccDPOpt/libSOWFAincompressibleLESModels.so: undefined symbol: _ZTIN4Foam14incompressible9LESModels11GenEddyViscE
这个看起来编译的库跟现存的求解器不适配。你确保版本啥的都一致。
-
@李东岳 好的,谢谢李老师,已解决:
在文件SOWFA-2.4.0/src/turbulenceModels/incompressible/LES/Make/options中加入这句话即可:
-lincompressibleLESModels \