Package Details: petsc 3.21.1-1

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.000058
First Submitted: 2018-02-24 11:36 (UTC)
Last Updated: 2024-04-29 00:32 (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 .. 3 4 5 6 7 8 9 10 Next › Last »

mach6 commented on 2018-08-30 20:12 (UTC)

Do we really need this step?

# src for tutorials
cp -r ${_build_dir}/src ${pkgdir}/usr/share/doc/$pkgname/

The src folder by itself is around 147M. Should it be enough just cp -r ${_build_dir}/doc ${pkgdir}/usr/share/doc/$pkgname?

heitzmann commented on 2018-08-29 17:07 (UTC)

I think that would make sense only if we actually installed petsc in the system directories under /usr/local . I'm not sure what the policy is on that...

mach6 commented on 2018-08-29 15:28 (UTC)

Should we also copy /opt/petsc/linux-c-opt/lib/pkgconfig/PETSc.pc to /usr/share/pkgconfig? I run pkg-config --cflags PETSc and get Package petsc was not found in the pkg-config search path

ChrisTX commented on 2018-08-20 10:36 (UTC)

@heitzmann: Sorry my bad, I just noticed they switched the configure, but hadn't actually tried myself. The reason you get undefined reference errors is because CBLAS and LAPACKE are missing in their pkg-config --libs output. Adding those will make configure work, but the code itself will not compile due to undefined symbol errors while compiling pastix.c. I would assume that PETSc simply doesn't PaStiX 6.x yet and that the API changed. Their own build script still downloads 5.2.4 supporting that assumption.

heitzmann commented on 2018-08-17 16:37 (UTC)

@ChrisTX: Would you have a fix by any chance? I gave it a try but could not make it work. I must be missing some libraries, because what I get from pkg-config pastix --libs gives me many undefined reference errors...

ChrisTX commented on 2018-08-17 09:32 (UTC)

@heitzmann: PaStiX 6.x doesn't ship pastix-conf anymore and they're now using pkg-config instead, with the package names pastix and pastixf (with Fortran support). Could you update test_optdepends.sh accordingly?

sigvald commented on 2018-06-25 12:44 (UTC)

@heitzmann: You're welcome. Using a dedicated tool for comparing version strings is definitely a good idea. Lots of pitfalls due to various formats and suffixes.

heitzmann commented on 2018-06-25 11:22 (UTC) (edited on 2018-06-25 11:22 (UTC) by heitzmann)

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)

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.