CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Installation

[foam-extend.org] Errror in wmake for metisDecomp and parmetisDecomp

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   May 25, 2021, 20:08
Default Errror in wmake for metisDecomp and parmetisDecomp
  #1
Senior Member
 
Sultan Islam
Join Date: Dec 2015
Location: Canada
Posts: 143
Rep Power: 11
EternalSeekerX is on a distinguished road
I finally figured out what the error was for parmetis and metis decomp not loading...

Here is the part of the log:

Code:
+ wmake libso metisDecomp
wmakeLnInclude: linking include files to ./lnInclude
Making dependency list for source file metisDecomp.C
SOURCE=metisDecomp.C ;  g++-5 -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/usr/include/metis-4     -I../decompositionMethods/lnInclude     -I../scotchDecomp/lnInclude -IlnInclude -I. -I/home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude -I/home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/metisDecomp.o
metisDecomp.C: In member function ‘Foam::label Foam::metisDecomp::decompose(const Foam::List<int>&, const Foam::List<int>&, const scalarField&, Foam::List<int>&)’:
metisDecomp.C:72:5: error: ‘idx_t’ was not declared in this scope
     idx_t options[METIS_NOPTIONS];
     ^
metisDecomp.C:73:29: error: ‘options’ was not declared in this scope
     METIS_SetDefaultOptions(options);
                             ^
metisDecomp.C:73:36: error: ‘METIS_SetDefaultOptions’ was not declared in this scope
     METIS_SetDefaultOptions(options);
                                    ^
metisDecomp.C:77:11: error: ‘real_t’ was not declared in this scope
     Field<real_t> processorWeights;
           ^
metisDecomp.C:77:17: error: template argument 1 is invalid
     Field<real_t> processorWeights;
                 ^
metisDecomp.C:145:36: error: ‘METIS_NOPTIONS’ was not declared in this scope
             if (mOptions.size() != METIS_NOPTIONS)
                                    ^
metisDecomp.C:165:53: error: no matching function for call to ‘sum(int&)’
             processorWeights /= sum(processorWeights);
                                                     ^
In file included from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/Field.C:747:0,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/Field.H:369,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/labelField.H:39,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/primitiveFields.H:37,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/pointField.H:36,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/edge.H:40,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/edgeList.H:32,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/primitiveMesh.H:57,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/polyMesh.H:44,
                 from ../decompositionMethods/lnInclude/decompositionMethod.H:38,
                 from metisDecomp.H:38,
                 from metisDecomp.C:26:
/home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/FieldFunctions.C:369:6: note: candidate: template<class Type> Type Foam::sum(const Foam::UList<T>&)
 Type sum(const UList<Type>& f)
      ^
/home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/FieldFunctions.C:369:6: note:   template argument deduction/substitution failed:
metisDecomp.C:165:53: note:   mismatched types ‘const Foam::UList<T>’ and ‘int’
             processorWeights /= sum(processorWeights);
                                                     ^
In file included from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/Field.C:747:0,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/Field.H:369,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/labelField.H:39,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/primitiveFields.H:37,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/pointField.H:36,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/edge.H:40,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/edgeList.H:32,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/primitiveMesh.H:57,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/polyMesh.H:44,
                 from ../decompositionMethods/lnInclude/decompositionMethod.H:38,
                 from metisDecomp.H:38,
                 from metisDecomp.C:26:
/home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/FieldFunctions.C:383:26: note: candidate: template<class Type> Type Foam::sum(const Foam::tmp<Foam::Field<Type> >&)
 TMP_UNARY_FUNCTION(Type, sum)
                          ^
/home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/FieldFunctions.C:327:12: note: in definition of macro ‘TMP_UNARY_FUNCTION’
 ReturnType Func(const tmp<Field<Type> >& tf1)                                 \
            ^
/home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/FieldFunctions.C:383:26: note:   template argument deduction/substitution failed:
 TMP_UNARY_FUNCTION(Type, sum)
                          ^
/home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/FieldFunctions.C:327:12: note: in definition of macro ‘TMP_UNARY_FUNCTION’
 ReturnType Func(const tmp<Field<Type> >& tf1)                                 \
            ^
metisDecomp.C:165:53: note:   mismatched types ‘const Foam::tmp<Foam::Field<Type> >’ and ‘int’
             processorWeights /= sum(processorWeights);
                                                     ^
metisDecomp.C:167:34: error: request for member ‘size’ in ‘processorWeights’, which is of non-class type ‘int’
             if (processorWeights.size() != nProcessors_)
                                  ^
metisDecomp.C:171:41: error: request for member ‘size’ in ‘processorWeights’, which is of non-class type ‘int’
                     << processorWeights.size()
                                         ^
metisDecomp.C:239:30: error: request for member ‘begin’ in ‘processorWeights’, which is of non-class type ‘int’
             processorWeights.begin(),
                              ^
metisDecomp.C:258:30: error: request for member ‘begin’ in ‘processorWeights’, which is of non-class type ‘int’
             processorWeights.begin(),
                              ^
make: *** [metisDecomp.dep:321: Make/linux64GccDPOpt/metisDecomp.o] Error 1
+ wmake libso parMetisDecomp
wmakeLnInclude: linking include files to ./lnInclude
Making dependency list for source file parMetisDecomp.C
SOURCE=parMetisDecomp.C ;  g++-5 -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -DOMPI_SKIP_MPICXX -pthread     -I/usr/include/parmetis-3     -I../decompositionMethods/lnInclude     -I../metisDecomp/lnInclude     -I../scotchDecomp/lnInclude -IlnInclude -I. -I/home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude -I/home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/parMetisDecomp.o
parMetisDecomp.C: In member function ‘Foam::label Foam::parMetisDecomp::decompose(Foam::Field<int>&, Foam::Field<int>&, const pointField&, Foam::Field<int>&, Foam::Field<int>&, const Foam::List<int>&, Foam::List<int>&)’:
parMetisDecomp.C:104:11: error: ‘real_t’ was not declared in this scope
     Field<real_t> xyz(3*cellCentres.size());
           ^
parMetisDecomp.C:104:17: error: template argument 1 is invalid
     Field<real_t> xyz(3*cellCentres.size());
                 ^
parMetisDecomp.C:109:20: error: invalid types ‘int[int]’ for array subscript
         xyz[compI++] = float(cc.x());
                    ^
parMetisDecomp.C:110:20: error: invalid types ‘int[int]’ for array subscript
         xyz[compI++] = float(cc.y());
                    ^
parMetisDecomp.C:111:20: error: invalid types ‘int[int]’ for array subscript
         xyz[compI++] = float(cc.z());
                    ^
parMetisDecomp.C:142:21: error: type/value mismatch at argument 1 in template parameter list for ‘template<class Type> class Foam::Field’
         Field<real_t> prevXyz(fromPrevProc);
                     ^
parMetisDecomp.C:142:21: note:   expected a type, got ‘real_t’
parMetisDecomp.C:142:43: error: invalid user-defined conversion from ‘Foam::IPstream’ to ‘int’ [-fpermissive]
         Field<real_t> prevXyz(fromPrevProc);
                                           ^
In file included from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/Ostream.H:39:0,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/OSstream.H:40,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/messageStream.H:220,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/error.H:51,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/HashTableI.H:26,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/HashTable.H:550,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/objectRegistry.H:38,
                 from /home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/polyMesh.H:43,
                 from ../decompositionMethods/lnInclude/decompositionMethod.H:38,
                 from parMetisDecomp.H:37,
                 from parMetisDecomp.C:26:
/home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/IOstream.H:366:13: note: candidate is: Foam::IOstream::operator void*() const <near match>
             operator void*() const
             ^
/home/si/.root/opt/OpenFOAM/foam/foam-extend-4.0/src/foam/lnInclude/IOstream.H:366:13: note:   no known conversion from ‘void*’ to ‘int’
parMetisDecomp.C:161:29: error: no matching function for call to ‘Foam::parMetisDecomp::prepend(int&, int&)’
         prepend(prevXyz, xyz);
                             ^
In file included from parMetisDecomp.H:177:0,
                 from parMetisDecomp.C:26:
parMetisDecompTemplates.C:32:6: note: candidate: template<class Type> static void Foam::parMetisDecomp::prepend(const Foam::UList<T>&, Foam::List<T>&)
 void Foam::parMetisDecomp::prepend
      ^
parMetisDecompTemplates.C:32:6: note:   template argument deduction/substitution failed:
parMetisDecomp.C:161:29: note:   mismatched types ‘const Foam::UList<T>’ and ‘int’
         prepend(prevXyz, xyz);
                             ^
parMetisDecomp.C:185:31: error: type/value mismatch at argument 1 in template parameter list for ‘template<class Type> class Foam::SubField’
             << SubField<real_t>(xyz, nDims*nCells, nDims*startCell)
                               ^
parMetisDecomp.C:185:31: note:   expected a type, got ‘real_t’
parMetisDecomp.C:214:13: error: request for member ‘setSize’ in ‘xyz’, which is of non-class type ‘int’
         xyz.setSize(xyz.size()-nDims*nCells);
             ^
parMetisDecomp.C:214:25: error: request for member ‘size’ in ‘xyz’, which is of non-class type ‘int’
         xyz.setSize(xyz.size()-nDims*nCells);
                         ^
parMetisDecomp.C:270:17: error: type/value mismatch at argument 1 in template parameter list for ‘template<class Type> class Foam::Field’
     Field<real_t> tpwgts(nCon*nProcessors_, 1./nProcessors_);
                 ^
parMetisDecomp.C:270:17: note:   expected a type, got ‘real_t’
parMetisDecomp.C:270:60: error: expression list treated as compound expression in initializer [-fpermissive]
     Field<real_t> tpwgts(nCon*nProcessors_, 1./nProcessors_);
                                                            ^
parMetisDecomp.C:270:30: warning: left operand of comma operator has no effect [-Wunused-value]
     Field<real_t> tpwgts(nCon*nProcessors_, 1./nProcessors_);
                              ^
parMetisDecomp.C:272:17: error: type/value mismatch at argument 1 in template parameter list for ‘template<class Type> class Foam::Field’
     Field<real_t> ubvec(nCon, 1.02);
                 ^
parMetisDecomp.C:272:17: note:   expected a type, got ‘real_t’
parMetisDecomp.C:272:35: error: expression list treated as compound expression in initializer [-fpermissive]
     Field<real_t> ubvec(nCon, 1.02);
                                   ^
parMetisDecomp.C:272:35: warning: left operand of comma operator has no effect [-Wunused-value]
parMetisDecomp.C:276:16: error: invalid types ‘int[int]’ for array subscript
         ubvec[0] = 1;
                ^
parMetisDecomp.C:298:13: error: request for member ‘begin’ in ‘xyz’, which is of non-class type ‘int’
         xyz.begin(),
             ^
parMetisDecomp.C:301:16: error: request for member ‘begin’ in ‘tpwgts’, which is of non-class type ‘int’
         tpwgts.begin(),
                ^
parMetisDecomp.C:302:15: error: request for member ‘begin’ in ‘ubvec’, which is of non-class type ‘int’
         ubvec.begin(),
               ^
make: *** [parMetisDecomp.dep:344: Make/linux64GccDPOpt/parMetisDecomp.o] Error 1
Anyone know why this is?


Edit: I fixed it by swtiching back to thirdparty metis and parmetis. However the decomposition still warns about not being able to load in parmetis/metis decomp so files. I really think this this just the issue with newer distros and foam extend 4.0.

Last edited by EternalSeekerX; May 26, 2021 at 20:04.
EternalSeekerX is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
[foam-extend.org] foam-extend-4.0 Debian Testing bison problem fseterr.c brett1 OpenFOAM Installation 9 September 30, 2019 23:36
Patches for OpenFOAM 1.7 on MacOS X gschaider OpenFOAM Installation 101 September 21, 2011 06:37
Problems about compiling OF1.5.x on Bluegene/P ywang OpenFOAM 1 August 25, 2011 06:22
OpenFoam 1.6-ext - error ./Allwmake in /src preibie OpenFOAM Installation 14 June 14, 2011 06:57
OpenFOAM 1.7.1 installation problem on OpenSUSE 11.3 flakid OpenFOAM Installation 16 December 28, 2010 09:48


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