Hi, I recently configured petsc after pulling from the master branch, configuring using the
arch-linux-pkgs-64idx.py script provided, and specified this when trying to install libmesh-1.4.0, which failed with error message: ... CXX src/numerics/libmesh_dbg_la-sparse_matrix.lo CXX src/numerics/libmesh_dbg_la-sparse_shell_matrix.lo CXX src/numerics/libmesh_dbg_la-sum_shell_matrix.lo CXX src/numerics/libmesh_dbg_la-tensor_shell_matrix.lo In file included from ./include/libmesh/petsc_vector.h:31, from ../src/numerics/petsc_vector.C:24: ../src/numerics/petsc_vector.C: In member function ‘virtual void libMesh::PetscVector<T>::localize(libMesh::NumericVector<T>&) const’: ./include/libmesh/petsc_macro.h:94:58: error: there are no arguments to ‘VecScatterCreateWithData’ that depend on a template parameter, so a declaration of ‘VecScatterCreateWithData’ must be available [-fpermissive] # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ^~~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:685:10: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(_vec, is, ^~~~~~~~~~~~~~~~~~~~~~~ ./include/libmesh/petsc_macro.h:94:58: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ^~~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:685:10: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(_vec, is, ^~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C: In member function ‘virtual void libMesh::PetscVector<T>::localize(libMesh::NumericVector<T>&, const std::__debug::vector<long unsigned int>&) const’: ./include/libmesh/petsc_macro.h:94:58: error: there are no arguments to ‘VecScatterCreateWithData’ that depend on a template parameter, so a declaration of ‘VecScatterCreateWithData’ must be available [-fpermissive] # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ^~~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:758:10: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(_vec, is, ^~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C: In member function ‘virtual void libMesh::PetscVector<T>::localize(std::__debug::vector<T>&, const std::__debug::vector<long unsigned int>&) const’: ./include/libmesh/petsc_macro.h:94:58: error: there are no arguments to ‘VecScatterCreateWithData’ that depend on a template parameter, so a declaration of ‘VecScatterCreateWithData’ must be available [-fpermissive] # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ^~~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:811:10: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(_vec, ^~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C: In member function ‘virtual void libMesh::PetscVector<T>::localize(libMesh::numeric_index_type, libMesh::numeric_index_type, const std::__debug::vector<long unsigned int>&)’: ./include/libmesh/petsc_macro.h:94:58: error: there are no arguments to ‘VecScatterCreateWithData’ that depend on a template parameter, so a declaration of ‘VecScatterCreateWithData’ must be available [-fpermissive] # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ^~~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:897:12: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(_vec, is, ^~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C: In member function ‘virtual void libMesh::PetscVector<T>::create_subvector(libMesh::NumericVector<T>&, const std::__debug::vector<long unsigned int>&) const’: ./include/libmesh/petsc_macro.h:94:58: error: there are no arguments to ‘VecScatterCreateWithData’ that depend on a template parameter, so a declaration of ‘VecScatterCreateWithData’ must be available [-fpermissive] # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ^~~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:1321:10: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(this->_vec, ^~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C: In instantiation of ‘void libMesh::PetscVector<T>::localize(libMesh::NumericVector<T>&) const [with T = double]’: ../src/numerics/petsc_vector.C:1526:16: required from here ./include/libmesh/petsc_macro.h:94:82: error: ‘VecScatterCreateWithData’ was not declared in this scope # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:685:10: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(_vec, is, ^~~~~~~~~~~~~~~~~~~~~~~ ./include/libmesh/petsc_macro.h:94:82: note: suggested alternative: ‘VecScatterCreateToZero’ # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:685:10: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(_vec, is, ^~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C: In instantiation of ‘void libMesh::PetscVector<T>::localize(libMesh::NumericVector<T>&, const std::__debug::vector<long unsigned int>&) const [with T = double]’: ../src/numerics/petsc_vector.C:1526:16: required from here ./include/libmesh/petsc_macro.h:94:82: error: ‘VecScatterCreateWithData’ was not declared in this scope # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:758:10: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(_vec, is, ^~~~~~~~~~~~~~~~~~~~~~~ CXX src/numerics/libmesh_dbg_la-tensor_tools.lo ./include/libmesh/petsc_macro.h:94:82: note: suggested alternative: ‘VecScatterCreateToZero’ # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:758:10: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(_vec, is, ^~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C: In instantiation of ‘void libMesh::PetscVector<T>::localize(std::__debug::vector<T>&, const std::__debug::vector<long unsigned int>&) const [with T = double]’: ../src/numerics/petsc_vector.C:1526:16: required from here ./include/libmesh/petsc_macro.h:94:82: error: ‘VecScatterCreateWithData’ was not declared in this scope # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:811:10: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(_vec, ^~~~~~~~~~~~~~~~~~~~~~~ ./include/libmesh/petsc_macro.h:94:82: note: suggested alternative: ‘VecScatterCreateToZero’ # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:811:10: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(_vec, ^~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C: In instantiation of ‘void libMesh::PetscVector<T>::localize(libMesh::numeric_index_type, libMesh::numeric_index_type, const std::__debug::vector<long unsigned int>&) [with T = double; libMesh::numeric_index_type = long unsigned int]’: ../src/numerics/petsc_vector.C:1526:16: required from here ./include/libmesh/petsc_macro.h:94:82: error: ‘VecScatterCreateWithData’ was not declared in this scope # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:897:12: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(_vec, is, ^~~~~~~~~~~~~~~~~~~~~~~ CXX src/numerics/libmesh_dbg_la-trilinos_epetra_matrix.lo ./include/libmesh/petsc_macro.h:94:82: note: suggested alternative: ‘VecScatterCreateToZero’ # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:897:12: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(_vec, is, ^~~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C: In instantiation of ‘void libMesh::PetscVector<T>::create_subvector(libMesh::NumericVector<T>&, const std::__debug::vector<long unsigned int>&) const [with T = double]’: ../src/numerics/petsc_vector.C:1526:16: required from here ./include/libmesh/petsc_macro.h:94:82: error: ‘VecScatterCreateWithData’ was not declared in this scope # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:1321:10: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(this->_vec, ^~~~~~~~~~~~~~~~~~~~~~~ CXX src/numerics/libmesh_dbg_la-trilinos_epetra_vector.lo ./include/libmesh/petsc_macro.h:94:82: note: suggested alternative: ‘VecScatterCreateToZero’ # define LibMeshVecScatterCreate(xin,ix,yin,iy,newctx) VecScatterCreateWithData(xin,ix,yin,iy,newctx) ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../src/numerics/petsc_vector.C:1321:10: note: in expansion of macro ‘LibMeshVecScatterCreate’ ierr = LibMeshVecScatterCreate(this->_vec, ^~~~~~~~~~~~~~~~~~~~~~~ CXX src/numerics/libmesh_dbg_la-trilinos_preconditioner.lo CXX src/numerics/libmesh_dbg_la-type_tensor.lo Makefile:17265: recipe for target 'src/numerics/libmesh_dbg_la-petsc_vector.lo' failed make[2]: *** [src/numerics/libmesh_dbg_la-petsc_vector.lo] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: Leaving directory '/home/chaztikov/src/libmesh-1.4.0/arch-linux-pkgs-64idx' Makefile:8551: recipe for target '../libmesh_dbg.la' failed make[1]: *** [../libmesh_dbg.la] Error 2 make[1]: Leaving directory '/home/chaztikov/src/libmesh-1.4.0/arch-linux-pkgs-64idx/tests' Makefile:31077: recipe for target 'all-recursive' failed make: *** [all-recursive] Error 1 Any idea how to work around this? Should I stick to petsc-3.9._? Thanks! _______________________________________________ Libmesh-users mailing list Libmesh-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libmesh-users