CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM (http://www.cfd-online.com/Forums/openfoam/)
-   -   Compiling new Solver with wmake (http://www.cfd-online.com/Forums/openfoam/74965-compiling-new-solver-wmake.html)

lin123 April 13, 2010 06:30

Compiling new Solver with wmake
 
Hello together,

I want to simulate the air flow around and through a car:cool:. As the model contains porous zones I added the porousSimpleSolver to my OpenFoam installation.:rolleyes:
/home/user/OpenFOAM/OpenFOAM-1.6/applications/solvers/incompressible/porousSimpleFoamLin
I did this solver using the SimpleFoam solver and the porous medium module from the compressible rhoPorousSimpleFoam solver and the help of a few documents I found on the web.:)
When I am compiling this new solver with wmake as described in the user guide, I get a huge number of errors.:( The strange thing is hat I get nearly the same errors when I try to compile an existing solver!:(
Here is what I get:
Code:

ares:/home/user/OpenFOAM/OpenFOAM-1.6/applications/solvers/incompressible/porousSimpleFoamLin # wmake
SOURCE=porousSimpleFoam.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wno-strict-aliasing -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-40 -I/home/user/OpenFOAM/OpenFOAM-1.6/src/turbulenceModels -I/home/user/OpenFOAM/OpenFOAM-1.6/src/turbulenceModels/incompressible/RAS/RASModel -I/home/user/OpenFOAM/OpenFOAM-1.6/src/transportModels -I/home/user/OpenFOAM/OpenFOAM-1.6/src/transportModels/incompressible/singlePhaseTransportModel -I/home/user/OpenFOAM/OpenFOAM-1.6/src/finiteVolume/lnInclude -IlnInclude -I. -I/home/user/OpenFOAM/OpenFOAM-1.6/src/OpenFOAM/lnInclude -I/home/user/OpenFOAM/OpenFOAM-1.6/src/OSspecific/POSIX/lnInclude  -fPIC -c $SOURCE -o Make/linux64GccDPOpt/porousSimpleFoam.o
/home/user/OpenFOAM/OpenFOAM-1.6/src/finiteVolume/lnInclude/readSIMPLEControls.H: In function int main(int, char**):
/home/user/OpenFOAM/OpenFOAM-1.6/src/finiteVolume/lnInclude/readSIMPLEControls.H:6: warning: unused variable momentumPredictor
/home/user/OpenFOAM/OpenFOAM-1.6/src/finiteVolume/lnInclude/readSIMPLEControls.H:9: warning: unused variable fluxGradp
/home/user/OpenFOAM/OpenFOAM-1.6/src/finiteVolume/lnInclude/readSIMPLEControls.H:12: warning: unused variable transonic
g++ -m64 -Dlinux64 -DWM_DP -Wall -Wno-strict-aliasing -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-40 -I/home/user/OpenFOAM/OpenFOAM-1.6/src/turbulenceModels -I/home/user/OpenFOAM/OpenFOAM-1.6/src/turbulenceModels/incompressible/RAS/RASModel -I/home/user/OpenFOAM/OpenFOAM-1.6/src/transportModels -I/home/user/OpenFOAM/OpenFOAM-1.6/src/transportModels/incompressible/singlePhaseTransportModel -I/home/user/OpenFOAM/OpenFOAM-1.6/src/finiteVolume/lnInclude -IlnInclude -I. -I/home/user/OpenFOAM/OpenFOAM-1.6/src/OpenFOAM/lnInclude -I/home/user/OpenFOAM/OpenFOAM-1.6/src/OSspecific/POSIX/lnInclude  -fPIC Make/linux64GccDPOpt/porousSimpleFoam.o -L/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt \
            -lincompressibleRASModels -lincompressibleTransportModels -lfiniteVolume -lOpenFOAM -liberty -ldl  -lm -o /home/user/OpenFOAM/OpenFOAM-1.6/applications/bin/linux64GccDPOpt/porousSimpleFoam
/usr/bin/ld: warning: libincompressibleTurbulenceModel.so, needed by /home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libmeshTools.so, needed by /home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libtriSurface.so, needed by /home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libPstream.so, needed by /home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so, not found (try using -rpath or -rpath-link)
Make/linux64GccDPOpt/porousSimpleFoam.o: In function `Foam::PtrList<Foam::porousZone>::~PtrList()':
porousSimpleFoam.C:(.text._ZN4Foam7PtrListINS_10porousZoneEED2Ev[Foam::PtrList<Foam::porousZone>::~PtrList()]+0x49): undefined reference to `Foam::coordinateSystem::~coordinateSystem()'
porousSimpleFoam.C:(.text._ZN4Foam7PtrListINS_10porousZoneEED2Ev[Foam::PtrList<Foam::porousZone>::~PtrList()]+0xdd): undefined reference to `Foam::coordinateSystem::~coordinateSystem()'
Make/linux64GccDPOpt/porousSimpleFoam.o: In function `Foam::fvMatrix<double>::setReference(int, double const&, bool)':
porousSimpleFoam.C:(.text._ZN4Foam8fvMatrixIdE12setReferenceEiRKdb[Foam::fvMatrix<double>::setReference(int, double const&, bool)]+0x15d): undefined reference to `Foam::IPstream::read(Foam::Pstream::commsTypes, int, char*, long)'
porousSimpleFoam.C:(.text._ZN4Foam8fvMatrixIdE12setReferenceEiRKdb[Foam::fvMatrix<double>::setReference(int, double const&, bool)]+0x19d): undefined reference to `Foam::OPstream::write(Foam::Pstream::commsTypes, int, char const*, long)'
porousSimpleFoam.C:(.text._ZN4Foam8fvMatrixIdE12setReferenceEiRKdb[Foam::fvMatrix<double>::setReference(int, double const&, bool)]+0x1e8): undefined reference to `Foam::IPstream::read(Foam::Pstream::commsTypes, int, char*, long)'
porousSimpleFoam.C:(.text._ZN4Foam8fvMatrixIdE12setReferenceEiRKdb[Foam::fvMatrix<double>::setReference(int, double const&, bool)]+0x21d): undefined reference to `Foam::OPstream::write(Foam::Pstream::commsTypes, int, char const*, long)'
porousSimpleFoam.C:(.text._ZN4Foam8fvMatrixIdE12setReferenceEiRKdb[Foam::fvMatrix<double>::setReference(int, double const&, bool)]+0x3b5): undefined reference to `Foam::IPstream::read(Foam::Pstream::commsTypes, int, char*, long)'
porousSimpleFoam.C:(.text._ZN4Foam8fvMatrixIdE12setReferenceEiRKdb[Foam::fvMatrix<double>::setReference(int, double const&, bool)]+0x3f5): undefined reference to `Foam::OPstream::write(Foam::Pstream::commsTypes, int, char const*, long)'
porousSimpleFoam.C:(.text._ZN4Foam8fvMatrixIdE12setReferenceEiRKdb[Foam::fvMatrix<double>::setReference(int, double const&, bool)]+0x440): undefined reference to `Foam::IPstream::read(Foam::Pstream::commsTypes, int, char*, long)'
porousSimpleFoam.C:(.text._ZN4Foam8fvMatrixIdE12setReferenceEiRKdb[Foam::fvMatrix<double>::setReference(int, double const&, bool)]+0x47d): undefined reference to `Foam::OPstream::write(Foam::Pstream::commsTypes, int, char const*, long)'
Make/linux64GccDPOpt/porousSimpleFoam.o: In function `Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::GeometricBoundaryField::evaluate()':
porousSimpleFoam.C:(.text._ZN4Foam14GeometricFieldIdNS_12fvPatchFieldENS_7volMeshEE22GeometricBoundaryField8evaluateEv[Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::GeometricBoundaryField::evaluate()]+0x349): undefined reference to `Foam::IPstream::waitRequests()'
porousSimpleFoam.C:(.text._ZN4Foam14GeometricFieldIdNS_12fvPatchFieldENS_7volMeshEE22GeometricBoundaryField8evaluateEv[Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::GeometricBoundaryField::evaluate()]+0x351): undefined reference to `Foam::OPstream::waitRequests()'
Make/linux64GccDPOpt/porousSimpleFoam.o: In function `Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh>::GeometricBoundaryField::evaluate()':
porousSimpleFoam.C:(.text._ZN4Foam14GeometricFieldINS_6VectorIdEENS_12fvPatchFieldENS_7volMeshEE22GeometricBoundaryField8evaluateEv[Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh>::GeometricBoundaryField::evaluate()]+0x349): undefined reference to `Foam::IPstream::waitRequests()'
porousSimpleFoam.C:(.text._ZN4Foam14GeometricFieldINS_6VectorIdEENS_12fvPatchFieldENS_7volMeshEE22GeometricBoundaryField8evaluateEv[Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh>::GeometricBoundaryField::evaluate()]+0x351): undefined reference to `Foam::OPstream::waitRequests()'
Make/linux64GccDPOpt/porousSimpleFoam.o: In function `Foam::DimensionedField<double, Foam::volMesh>::weightedAverage(Foam::DimensionedField<double, Foam::volMesh> const&) const':
porousSimpleFoam.C:(.text._ZNK4Foam16DimensionedFieldIdNS_7volMeshEE15weightedAverageERKS2_[Foam::DimensionedField<double, Foam::volMesh>::weightedAverage(Foam::DimensionedField<double, Foam::volMesh> const&) const]+0x9c): undefined reference to `Foam::reduce(double&, Foam::sumOp<double> const&)'
porousSimpleFoam.C:(.text._ZNK4Foam16DimensionedFieldIdNS_7volMeshEE15weightedAverageERKS2_[Foam::DimensionedField<double, Foam::volMesh>::weightedAverage(Foam::DimensionedField<double, Foam::volMesh> const&) const]+0x11f): undefined reference to `Foam::reduce(double&, Foam::sumOp<double> const&)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::operator<<(Foam::Ostream&, Foam::wallPoint const&)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::cellDistFuncs::cellDistFuncs(Foam::polyMesh const&)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so: undefined reference to `vtable for Foam::OPstream'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::OPstream::~OPstream()'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::cellDistFuncs::correctBoundaryFaceCells(Foam::HashSet<int, Foam::Hash<int> > const&, Foam::Field<double>&, Foam::Map<int>&) const'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::incompressible::turbulenceModel::correct()'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::cellDistFuncs::cellDistFuncs(Foam::polyMesh const&)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::IPstream::IPstream(Foam::Pstream::commsTypes, int, int, Foam::IOstream::streamFormat, Foam::IOstream::versionNumber)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::faceSet::faceSet(Foam::polyMesh const&, Foam::word const&, Foam::HashSet<int, Foam::Hash<int> > const&, Foam::IOobject::writeOption)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::directMappedPatchBase::sampleMesh() const'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so: undefined reference to `Foam::Pstream::exit(int)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::coordinateSystem::coordinateSystem(Foam::word const&, Foam::Vector<double> const&, Foam::Vector<double> const&, Foam::Vector<double> const&)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::cellSet::cellSet(Foam::polyMesh const&, Foam::word const&, int, Foam::IOobject::writeOption)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::triSurfaceTools::calcInterpolationWeights(Foam::triSurface const&, Foam::Field<Foam::Vector<double> > const&, Foam::List<Foam::FixedList<int, 3u> >&, Foam::List<Foam::FixedList<double, 3u> >&)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::directMappedPatchBase::calcMapping() const'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::cellSet::~cellSet()'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::cellDistFuncs::smallestDist(Foam::Vector<double> const&, Foam::polyPatch const&, int, Foam::List<int> const&, int&) const'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::incompressible::turbulenceModel::turbulenceModel(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::faceSet::faceSet(Foam::polyMesh const&, Foam::word const&, int, Foam::IOobject::writeOption)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::cellDistFuncs::getPointNeighbours(Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > const&, int, Foam::List<int>&) const'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::directMappedPolyPatch::typeName'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::triSurface::write(Foam::fileName const&, bool) const'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::wallPoint::greatPoint'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::patchWave::patchWave(Foam::polyMesh const&, Foam::HashSet<int, Foam::Hash<int> > const&, bool)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so: undefined reference to `Foam::Pstream::abort()'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::faceSet::~faceSet()'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::operator>>(Foam::Istream&, Foam::wallPoint&)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::cellDistFuncs::getPatchIDs(Foam::word const&) const'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::incompressible::turbulenceModel::typeName'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::coordinateSystem::coordinateSystem(Foam::dictionary const&, Foam::objectRegistry const&)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::patchWave::~patchWave()'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `typeinfo for Foam::directMappedPatchBase'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `typeinfo for Foam::directMappedPolyPatch'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::triSurface::~triSurface()'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::topoSetSource::New(Foam::word const&, Foam::polyMesh const&, Foam::dictionary const&)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::coordinateSystem::writeDict(Foam::Ostream&, bool) const'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::cellDistFuncs::correctBoundaryPointCells(Foam::HashSet<int, Foam::Hash<int> > const&, Foam::Field<double>&, Foam::Map<int>&) const'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::incompressible::turbulenceModel::turbulenceModelConstructorTablePtr_'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::directMappedPatchBase::typeName'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::triSurfaceTools::delaunay2D(Foam::List<Foam::Vector2D<double> > const&)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so: undefined reference to `Foam::cellDistFuncs::maxPatchSize(Foam::HashSet<int, Foam::Hash<int> > const&) const'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::incompressible::turbulenceModel::constructturbulenceModelConstructorTables()'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so: undefined reference to `Foam::Pstream::init(int&, char**&)'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::incompressible::turbulenceModel::destroyturbulenceModelConstructorTables()'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libincompressibleRASModels.so: undefined reference to `Foam::cellDistFuncs::sumPatchSize(Foam::HashSet<int, Foam::Hash<int> > const&) const'
/home/user/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so: undefined reference to `Foam::Pstream::addValidParOptions(Foam::HashTable<Foam::string, Foam::word, Foam::string::hash>&)'
collect2: ld returned 1 exit status
make: *** [/home/user/OpenFOAM/OpenFOAM-1.6/applications/bin/linux64GccDPOpt/porousSimpleFoam] Fehler 1
ares:/home/user/OpenFOAM/OpenFOAM-1.6/applications/solvers/incompressible/porousSimpleFoamLin #


I am using OpenFoam 1.6 with gcc version 4.3.3. I am new to OpenFoam and a beginner with Linux
I would be really thankful for a few advices.:)
Lin

romant April 13, 2010 08:27

it can be that you are missing some of the packages required to compile OpenFOAM.

those here are just some of the packages needed

binutils-dev flex git git-core build-essential python-dev libqt4-dev libreadline5-dev wget zlib1g-dev cmake

if you are not sure about those, try using the install cookbook from the forum

http://www.cfd-online.com/Forums/ope...-cookbook.html

or those install scripts if u are using a debian based distribution http://hvirvel.dk/OF/ (they are actually taken from the initializer of the install cookbook :)

lin123 April 13, 2010 09:38

Thanks for your reply! :)
Actually I am using SUSE Linux Enterprise Server(x86_64)
how to check which package is already installed!?

romant April 13, 2010 14:18

suse installation stuff
 
Hej,

in that case. Try using YAST. If I remember right, this is the installation tool of Suse. In that program you can search for packages and if they show up as not installed, you can install them.

If for some reason you only have command line access, http://en.opensuse.org/Software_Mana...ine_Comparison here are some tips on how to install packages commandline style with suse.


All times are GMT -4. The time now is 23:14.