@hyperLDK 您好,我刚刚实现了v2312版本下的编译,参考了这个case
但目前我的makeTurbmodels.C文件会有一些waring还不知道该怎样修改,不过模型可以使用了
makeTurbmodels.C文件为:
/*---------------------------------------------------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     |
    \\  /    A nd           | www.openfoam.com
     \\/     M anipulation  |
-------------------------------------------------------------------------------
    Copyright (C) 2013-2016 OpenFOAM Foundation
    Copyright (C) 2020 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
    This file is part of OpenFOAM.
    OpenFOAM is free software: you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    for more details.
    You should have received a copy of the GNU General Public License
    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
\*---------------------------------------------------------------------------*/
#include "IncompressibleTurbulenceModel.H"
#include "incompressible/transportModel/transportModel.H"
#include "addToRunTimeSelectionTable.H"
#include "makeTurbulenceModel.H"
#include "laminarModel.H"
#include "RASModel.H"
//- Define turbulence model typedefs, with EddyDiffusivity
#define defineTurbulenceModelTypes(                                            \
    Alpha, Rho, baseModel, BaseModel, Transport)                               \
                                                                               \
    namespace Foam                                                             \
    {                                                                          \
        typedef TurbulenceModel                                                \
        <                                                                      \
            Alpha,                                                             \
            Rho,                                                               \
            baseModel,                                                         \
            Transport                                                          \
        > Transport##baseModel;                                                \
                                                                               \
        typedef BaseModel<Transport>                                           \
            Transport##BaseModel;                                              \
                                                                               \
        typedef RASModel<Transport##BaseModel>                                 \
            RAS##Transport##BaseModel;                                         \
    }
// Legacy name
#define makeTurbulenceModelTypes(a, b, c, d, e) \
    defineTurbulenceModelTypes(a, b, c, d, e)
#define makeBaseTurbulenceModel(Alpha, Rho, baseModel, BaseModel, Transport)   \
    /* Turbulence typedefs */                                                  \
    defineTurbulenceModelTypes(Alpha, Rho, baseModel, BaseModel, Transport)    \
                                                                               \
    namespace Foam                                                             \
    {                                                                          \
        /* Turbulence selection table */                                       \
        defineTemplateRunTimeSelectionTable                                    \
        (                                                                      \
            Transport##baseModel,                                              \
            dictionary                                                         \
        );                                                                     \
                                                                               \
        /* RAS models */                                                       \
        defineNamedTemplateTypeNameAndDebug(RAS##Transport##BaseModel, 0);     \
                                                                               \
        defineTemplateRunTimeSelectionTable                                    \
        (RAS##Transport##BaseModel, dictionary);                               \
                                                                               \
        addToRunTimeSelectionTable                                             \
        (                                                                      \
            Transport##baseModel,                                              \
            RAS##Transport##BaseModel,                                         \
            dictionary                                                         \
        );                                                                     \
    }
#define makeTemplatedTurbulenceModel(BaseModel, SType, Type)                   \
    defineNamedTemplateTypeNameAndDebug                                        \
        (Foam::SType##Models::Type<Foam::BaseModel>, 0);                       \
                                                                               \
    namespace Foam                                                             \
    {                                                                          \
        namespace SType##Models                                                \
        {                                                                      \
            typedef Type<BaseModel> Type##SType##BaseModel;                    \
                                                                               \
            addToRunTimeSelectionTable                                         \
            (                                                                  \
                SType##BaseModel,                                              \
                Type##SType##BaseModel,                                        \
                dictionary                                                     \
            );                                                                 \
        }                                                                      \
    }
#define makeTurbulenceModel(BaseModel, SType, Type)                            \
    namespace Foam                                                             \
    {                                                                          \
        namespace SType##Models                                                \
        {                                                                      \
            defineTypeNameAndDebug(Type, 0);                                   \
                                                                               \
            addToRunTimeSelectionTable                                         \
            (                                                                  \
                SType##BaseModel,                                              \
                Type,                                                          \
                dictionary                                                     \
            );                                                                 \
        }                                                                      \
    }
    
makeTurbulenceModelTypes
(
    geometricOneField,
    geometricOneField,
    incompressibleTurbulenceModel,
    IncompressibleTurbulenceModel,
    transportModel
);
#define makeRASModel(Type)                                                     \
    makeTemplatedTurbulenceModel                                               \
    (transportModelIncompressibleTurbulenceModel, RAS, Type)
    
makeBaseTurbulenceModel
(
    geometricOneField,
    geometricOneField,
    incompressibleTurbulenceModel,
    IncompressibleTurbulenceModel,
    transportModel
);
    
    
// -------------------------------------------------------------------------- //
// RAS models
// -------------------------------------------------------------------------- //       
#include "kOmegaSSTV.H"
makeRASModel(kOmegaSSTV);
// **************************************************************************** //
// ************************************************************************* //
问题如下:
Making dependencies: makeTurbModel.C
g++ -std=c++14 -m64 -pthread -DOPENFOAM=2312 -DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -Wno-unknown-pragmas -O3  -DNoRepository -ftemplate-depth-100  -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/TurbulenceModels/turbulenceModels/lnInclude -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/TurbulenceModels/incompressible/lnInclude -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/transportModels -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/fvOptions/Ininclude -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/finiteVolume/lnInclude -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/meshTools/lnInclude  -iquote. -IlnInclude -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/OpenFOAM/lnInclude -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/OSspecific/POSIX/lnInclude   -fPIC -c makeTurbModel.C -o Make/linux64GccDPInt32Opt/makeTurbModel.o
makeTurbModel.C:40:0: warning: "defineTurbulenceModelTypes" redefined
 #define defineTurbulenceModelTypes(                                            \
 
In file included from makeTurbModel.C:33:0:
/home/ad/OpenFOAM/OpenFOAM-v2312/src/TurbulenceModels/turbulenceModels/lnInclude/makeTurbulenceModel.H:30:0: note: this is the location of the previous definition
 #define defineTurbulenceModelTypes(                                            \
 makeTurbModel.C:65:0: warning: "makeBaseTurbulenceModel" redefined
 #define makeBaseTurbulenceModel(Alpha, Rho, baseModel, BaseModel, Transport)   \
 
In file included from makeTurbModel.C:33:0:
/home/ad/OpenFOAM/OpenFOAM-v2312/src/TurbulenceModels/turbulenceModels/lnInclude/makeTurbulenceModel.H:61:0: note: this is the location of the previous definition
 #define makeBaseTurbulenceModel(Alpha, Rho, baseModel, BaseModel, Transport)   \
 
g++ -std=c++14 -m64 -pthread -DOPENFOAM=2312 -DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -Wno-unknown-pragmas -O3  -DNoRepository -ftemplate-depth-100  -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/TurbulenceModels/turbulenceModels/lnInclude -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/TurbulenceModels/incompressible/lnInclude -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/transportModels -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/fvOptions/Ininclude -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/finiteVolume/lnInclude -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/meshTools/lnInclude  -iquote. -IlnInclude -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/OpenFOAM/lnInclude -I/home/ad/OpenFOAM/OpenFOAM-v2312/src/OSspecific/POSIX/lnInclude   -fPIC -shared -Xlinker --add-needed -Xlinker --no-as-needed  Make/linux64GccDPInt32Opt/makeTurbModel.o -L/home/ad/OpenFOAM/OpenFOAM-v2312/platforms/linux64GccDPInt32Opt/lib \
    -lturbulenceModels -lincompressibleTransportModels -lincompressibleTurbulenceModels -lfvOptions -lfiniteVolume -lmeshTools   -o /home/ad/OpenFOAM/ad-v2312/platforms/linux64GccDPInt32Opt/lib/libMyIncompressiblenceModels.so
希望对你有帮助!
 
			




