fsiFoam安装



  • 新手求教!想用下foam-extend的fsiFoam工具包来进行流固耦合计算。然后按照网上的教程依次安装foam-extend-4.0与fsiFoam,已经在虚拟机上安装成功,成功运行工具包里面的案例。但是在组里的服务器上安装的时候出现了问题,foam-extend4.0可以顺利编译安装,但是fsiFoam无法正常安装。原先以为是gcc版本的问题,于是又编译了gcc-5.4.0,与虚拟机环境中一致,但是还是会报错。报错如下:

    fluidSolvers/finiteVolume/RBFMeshMotionSolver/RBFMeshMotionSolver.C:297:5: error: 'vector' is not a member of 'std'
    std::vector<unsigned int> movingControlPointLabelsVector;
    fluidSolvers/finiteVolume/RBFMeshMotionSolver/RBFMeshMotionSolver.C:297:17: error: expected primary-expression before 'unsigned'
    std::vector<unsigned int> movingControlPointLabelsVector;
    ^
    fluidSolvers/finiteVolume/RBFMeshMotionSolver/RBFMeshMotionSolver.C:300:5: error: 'vector' is not a member of 'std'
    std::vector<unsigned int> movingControlPointPatchIds;
    

    报错实在太多了,选取了局部,可能大概也许,其他报错和这些都是由同样的原因引起的吧。不知各位大佬有没有遇到过这样的报错信息。面对之,毫无头绪,不知如何下手进行修改。



  • 找到第一个error那段发出来看看,后面的error参考价值不大。
    另外,确认调用的gcc版本没有错,装了低版本的gcc还要改调用路径的。



  • 对,看看第一个error,看起来像是编译器的原因,但是貌似你确定编译器没问题



  • 同样的问题已解决,解决方案见链接https://github.com/wyldckat/FluidStructureInteraction/issues/4,大概就是在提示的文件里面加上 “#include<vector>”,不是gcc编译器版本的问题。



  • 很难想象发布出来的extend-4.0竟然有这种头文件没有包含的错误

    并且还有这种在虚拟机里面有头文件,在服务器上没有头文件这种奇异行为



  • @李东岳 对的,很诡异的错误,当初也以为是gcc版本问题,试了好多个版本,但最后竟然是头文件包含的问题


Log in to reply