@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.
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-2-Clause |
Provides: | petsc4py |
Submitter: | heitzmann |
Maintainer: | MartinDiehl |
Last Packager: | MartinDiehl |
Votes: | 19 |
Popularity: | 0.000000 |
First Submitted: | 2018-02-24 11:36 (UTC) |
Last Updated: | 2025-01-03 06:29 (UTC) |
« First ‹ Previous 1 2 3 4 5 6 7 8 9 10 Next › Last »
@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.
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.
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
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
@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.
Hello,
Is there a reason for the package to be installed in /opt
instead of /usr
?
Also I suggest to enable OpenCL.
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.
@lahwaacz: thanks, it is fixed now.
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
@carlosal1015: I missed some dependencies. Please let me know if the current version still does not work.
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.