Thanks @sigvald. I've modified a little the code to use sort -V
to compare version strings, which seems more reliable (https://stackoverflow.com/a/4024263)
Search Criteria
Package Details: petsc 3.22.1-1
Package Actions
Git Clone URL: | https://aur.archlinux.org/petsc.git (read-only, click to copy) |
---|---|
Package Base: | petsc |
Description: | Portable, extensible toolkit for scientific computation |
Upstream URL: | https://petsc.org |
Keywords: | computing scientific |
Licenses: | BSD |
Provides: | petsc4py |
Submitter: | heitzmann |
Maintainer: | MartinDiehl |
Last Packager: | MartinDiehl |
Votes: | 19 |
Popularity: | 0.000001 |
First Submitted: | 2018-02-24 11:36 (UTC) |
Last Updated: | 2024-11-23 14:08 (UTC) |
Dependencies (30)
- fftw-openmpi
- gsl (gsl-gitAUR)
- hdf5-openmpi
- lapack (aocl-libflame-aoccAUR, lapack-gitAUR, atlas-lapackAUR, blas-aocl-gccAUR, blas-aocl-aoccAUR, openblas-lapackAUR, blas-mklAUR, aocl-libflameAUR, blas-openblas)
- libjpeg-turbo (mozjpeg-gitAUR, libjpeg-turbo-gitAUR, mozjpegAUR)
- libyaml (libyaml-gitAUR)
- netcdf-openmpi
- openmpi (openmpi-gitAUR)
- python-mpi4py (python-mpi4py-intelAUR)
- python-numpy (python-numpy-flameAUR, python-numpy-gitAUR, python-numpy1AUR, python-numpy-mkl-tbbAUR, python-numpy-mklAUR, python-numpy-mkl-binAUR)
- suitesparse
- superlu
- zfp
- zlib (zlib-ng-compat-gitAUR, zlib-gitAUR, zlib-ng-compat)
- cmake (cmake-gitAUR) (make)
- cython (cython-gitAUR, cython0AUR) (make)
- gcc (gcc-gitAUR, gccrs-gitAUR, gcc11AUR, gcc-snapshotAUR) (make)
- gcc-fortran (gcc-fortran-gitAUR, gcc11-fortranAUR, gcc-fortran-snapshotAUR) (make)
- python-setuptools (make)
- hypreAUR (optional) – support for HYPRE
- kokkosAUR (trilinosAUR) (optional) – support Kokkos
- metisAUR (metis-gitAUR) (optional) – support for METIS
- mumpsAUR (mumps-seq-sharedAUR, mumps-cmakeAUR, mumps-parAUR, mumps-seqAUR) (optional) – support for MUMPS
- parmetisAUR (parmetis-gitAUR) (optional) – support for ParMETIS
- scalapackAUR (optional) – support for ScaLAPACK
- scotchAUR (scotch-gitAUR) (optional) – support for Scotch
- superlu_distAUR (optional) – support for SuperLU_DIST
- triangleAUR (optional) – support for Triangle
- trilinos-ml (trilinosAUR) (optional) – support for ML (part of Trilinos)
- zoltanAUR (trilinosAUR) (optional) – support for zoltan
Required by (26)
- coolfluid-svn
- damask (make)
- damask-grid
- damask-grid (make)
- damask-mesh
- damask-mesh (make)
- deal-ii (optional)
- dolfin
- dolfin-hpc
- dolfinx
- dolfinx-git
- fenics-basix-git
- freefem (optional)
- libmesh-petsc
- petsc4foam
- pism
- precice
- precice-git
- python-basix-git
- python-clawpack (optional)
- python-damask (make)
- python-dolfin (optional)
- python-pyop2
- slepc
- sparselizard
- underworld2-git
Sources (2)
Latest Comments
« First ‹ Previous 1 .. 4 5 6 7 8 9 10 Next › Last »
heitzmann commented on 2018-06-25 11:22 (UTC) (edited on 2018-06-25 11:22 (UTC) by heitzmann)
sigvald commented on 2018-06-24 17:22 (UTC)
Here's a rudimentary solution for test_optdepends.sh that admittedly turned out uglier than I had hoped. I haven't tested it but I think it should work.
function version { echo "$@" | awk -F. '{ printf("%d%03d%03d\n", $1,$2,$3); }'; }
# Add hypre support
if [ -f "/usr/lib/libHYPRE.so" ]; then
VERSION_MIN=2.14.2
VERSION=$(readlink -f "/usr/lib/libHYPRE.so" | grep -oP '\d+.\d+.\d+')
if [ $(version $VERSION) -lt $(version $VERSION_MIN) ]; then
(>&2 echo "WARNING: COMPILING PETSc WITHOUT HYPRE.")
(>&2 echo "HYPRE $VERSION FOUND BUT AT LEAST $VERSION_MIN IS REQUIRED.")
sleep 3
else
CONFOPTS="${CONFOPTS} --with-hypre=1"
fi
fi
Since the warning goes to stderr it doesn't affect the variable in PKGBUILD.
If you want you can either just take it and add it to test_optdepends.sh or add me as co-maintainer. Both are fine.
heitzmann commented on 2018-06-23 10:28 (UTC)
@sigvald Yes, I agree with you... it would be useful to have versions in both optdepends and makedepends. If you want to include this version check in test_optdepends.sh I'll be glad to update the package or add you as a co-maintainer.
sigvald commented on 2018-06-23 07:34 (UTC) (edited on 2018-06-23 08:02 (UTC) by sigvald)
Really? How unfortunate! I can only guess the rationale is that since it's optional, it doesn't have to be used if an unsupported version is installed. That leaves it to the PKGBUILD to run the necessary commands to build without Hypre (preferrably with a warning) if Hypre is of an unsupported version. That's only a wishlist. I won't blame you if you don't have time.
heitzmann commented on 2018-06-22 15:42 (UTC)
@sigvald optdepends items do not support version restrictions (man PKGBUILD)
sigvald commented on 2018-06-22 15:20 (UTC)
This package should have
'hypre>=2.14: support for the hypre sparse system solver'
in optdepends. Note the version requirement.
sigvald commented on 2018-06-21 13:01 (UTC) (edited on 2018-06-21 17:10 (UTC) by sigvald)
Anyone familiar with this one?
/home/sigvald/Downloads/fenics/petsc/src/petsc-3.9.2/src/mat/impls/hypre/mhypre.c: In function ‘hypre_array_destroy’:
/home/sigvald/Downloads/fenics/petsc/src/petsc-3.9.2/src/mat/impls/hypre/mhypre.c:1453:37: error: macro "hypre_TFree" passed 2 arguments, but takes just 1
hypre_TFree(ptr,HYPRE_MEMORY_HOST);
^
/home/sigvald/Downloads/fenics/petsc/src/petsc-3.9.2/src/mat/impls/hypre/mhypre.c:1453:4: error: ‘hypre_TFree’ undeclared (first use in this function); did you mean ‘hypre_Free’?
hypre_TFree(ptr,HYPRE_MEMORY_HOST);
^~~~~~~~~~~
hypre_Free
/home/sigvald/Downloads/fenics/petsc/src/petsc-3.9.2/src/mat/impls/hypre/mhypre.c:1453:4: note: each undeclared identifier is reported only once for each function it appears in
make[2]: *** [gmakefile:150: arch-linux-c-opt/obj/mat/impls/hypre/mhypre.o] Error 1
make[2]: Leaving directory '/home/sigvald/Downloads/fenics/petsc/src/petsc-3.9.2'
make[1]: *** [/home/sigvald/Downloads/fenics/petsc/src/petsc-3.9.2/lib/petsc/conf/rules:81: gnumake] Error 2
make[1]: Leaving directory '/home/sigvald/Downloads/fenics/petsc/src/petsc-3.9.2'
**************************ERROR*************************************
Error during compile, check arch-linux-c-opt/lib/petsc/conf/make.log
Send it and arch-linux-c-opt/lib/petsc/conf/configure.log to petsc-maint@mcs.anl.gov
********************************************************************
make: *** [makefile:36: all] Error 1
==> ERROR: A failure occurred in build().
Aborting...
EDIT: Hypre needs to be v2.14.0, but the one on AUR is out-of-date (v2.11.0). Thanks to Satish Balay for pointing this out in a mail to me.
heitzmann commented on 2018-05-21 16:50 (UTC)
@mcovalt setting PETSC_ARCH messes up slepc... I don't have the time to figure out a fix right now, so I'll leave it as it is. Let me know if you can help with that.
mcovalt commented on 2018-05-15 18:46 (UTC)
Looks like my first comment didn't make it. Consider exporting PETSC_ARCH
in addition to PETSC_DIR
since many programs look for both environment variables to indicate a valid petsc installation is available.
Pinned Comments
MartinDiehl commented on 2022-10-06 10:26 (UTC)
@jrohwer
When building PETSc (more specifically, petsc4py), one test (ex100 from ksp) will fail if a previous (major) version is installed. I could not figure out why this happens. The solution would be to build in a clean root (which is a little bit complicated due to dependency on other AUR packages) or simply uninstall the old version before.
Any help to solve this issue is welcomed.