Package Details: petsc 3.21.0-2

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.000098
First Submitted: 2018-02-24 11:36 (UTC)
Last Updated: 2024-04-03 06:01 (UTC)

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.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 9 Next › Last »

MartinDiehl commented on 2022-07-07 21:58 (UTC)

@fsimonis I tried to add it, but for me it gives

The option -Wp,-D_FORTIFY_SOURCE should probably be -Wp,-D-FORTIFY-SOURCE

Could you see if the same happens if you add --CFLAGS=${CFLAGS} to configure.

fsimonis commented on 2022-07-06 14:38 (UTC)

Hi and thanks for maintaining the package! Could you pass the C/CXX/LD flags defined in /etc/makepkg.conf to the PETSc configuration? PETSc always tells me that it ignores the envs.

carlosal1015 commented on 2022-06-09 16:00 (UTC) (edited on 2022-06-13 17:54 (UTC) by carlosal1015)

Hi dear @MartinDiehl, I submit a bug report for python-mpi4py because something is wrong in petsc4py because of mpi4py.

Now that I see, mpi4py is an optional dependency.

Edited 2022-06-13:

Adding this changed solved the issue from my side, the same applies for mumps, petsc, petsc-complex or any PKGBUILD that have check() function and depends of openmpi. E.g.

==> Starting check()...
Running check examples to verify correct installation
Using PETSC_DIR=/tmp/makepkg/petsc/src/petsc-3.17.2 and PETSC_ARCH=arch-linux-c-opt
C/C++ example src/snes/tutorials/ex19 run successfully with 1 MPI process
C/C++ example src/snes/tutorials/ex19 run successfully with 2 MPI processes
C/C++ Python example src/ksp/ksp/tutorials/ex100 run successfully with 1 MPI process
Fortran example src/snes/tutorials/ex5f run successfully with 1 MPI process
Completed test examples
==> Starting check()...
Running check examples to verify correct installation
Using PETSC_DIR=/tmp/makepkg/petsc-complex/src/petsc-3.17.2 and PETSC_ARCH=arch-linux-c-opt
C/C++ example src/snes/tutorials/ex19 run successfully with 1 MPI process
C/C++ example src/snes/tutorials/ex19 run successfully with 2 MPI processes
C/C++ Python example src/ksp/ksp/tutorials/ex100 run successfully with 1 MPI process
Fortran example src/snes/tutorials/ex5f run successfully with 1 MPI process
Completed test examples

pums974 commented on 2022-01-26 08:23 (UTC) (edited on 2022-01-26 08:24 (UTC) by pums974)

I have an error during check:

PKGBUILD: line 73: [: too many arguments

I think the line:

if [ -z $(ldconfig -p | grep libcuda.so.1) ]; then

should be

if [ -z "$(ldconfig -p | grep libcuda.so.1)" ]; then

MartinDiehl commented on 2021-11-28 21:46 (UTC)

@a.kudelin

I've inherited the PKGBUILD and don't know the exact reasons for installation into /opt However, PETSc installation is a little bit special. It relies on PETSC_DIR (and optionally PETSC_ARCH). Installing it into /usr might have unwanted effects, for example the PETSC_DIR/PETSC_ARCH mechanism to handle multiple versions might not work anymore.

If you have a modified PKGBUILD to change the installation path and/or test_optdepends.sh to include http://viennacl.sourceforge.net/ I will give it a try.

a.kudelin commented on 2021-11-28 12:00 (UTC) (edited on 2021-11-28 12:15 (UTC) by a.kudelin)

Hello,
Is there a reason for the package to be installed in /opt instead of /usr?
Also I suggest to enable OpenCL.

carlosal1015 commented on 2021-09-23 21:15 (UTC)

Thanks @MartinDiehl, I'm glad we have python bindings and the scotch package will be good maintained soon. Both are the building blocks of many packages. Here is the log file for petsc 3.15.4-5, no problem installation.

MartinDiehl commented on 2021-09-23 09:02 (UTC)

@lahwaacz: thanks, it is fixed now.

lahwaacz commented on 2021-09-22 14:48 (UTC)

The version 3.15.4-3 does not build for me (in a clean chroot with aurutils):

=========================================
Now to install the libraries do:
sudo make PETSC_DIR=/build/petsc/src/petsc-3.15.4 PETSC_ARCH=arch-linux-c-opt install
=========================================
*** Using PETSC_DIR=/build/petsc/src/petsc-3.15.4 PETSC_ARCH=arch-linux-c-opt ***
*** Copying PETSc to DESTDIR location: /build/petsc/src/tmp/opt/petsc/linux-c-opt  ***
====================================
Copy to DESTDIR /build/petsc/src/tmp/opt/petsc/linux-c-opt is now complete.
Before use - please copy/install over to specified prefix: /opt/petsc/linux-c-opt
====================================
/usr/bin/make  --no-print-directory -f makefile PETSC_ARCH=arch-linux-c-opt PETSC_DIR=/build/petsc/src/petsc-3.15.4 mpi4py-install petsc4py-install libmesh-install mfem-install slepc-install hpddm-install amrex-install bamg-install
make[2]: Nothing to be done for 'mpi4py-install'.
*** Building petsc4py ***
Sorry, user builduser is not allowed to execute '/usr/bin/python setup.py build' as builduser on lahwaacz.
**************************ERROR*************************************
Error building petsc4py.
********************************************************************
make[2]: *** [/build/petsc/src/petsc-3.15.4/arch-linux-c-opt/lib/petsc/conf/petscrules:49: petsc4pybuild] Error 1
make[1]: *** [makefile:296: install] Error 2
make: *** [GNUmakefile:17: install] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
==> ERROR: Build failed, check /var/lib/aurbuild/x86_64/lahwaacz/build

MartinDiehl commented on 2021-09-21 15:52 (UTC)

@carlosal1015: I missed some dependencies. Please let me know if the current version still does not work.