Package Details: python-mapbox-earcut 1.0.3-3

Git Clone URL: https://aur.archlinux.org/python-mapbox-earcut.git (read-only, click to copy)
Package Base: python-mapbox-earcut
Description: Python bindings for the C++ implementation of the Mapbox Earcut library.
Upstream URL: https://github.com/skogler/mapbox_earcut_python
Licenses: ISC
Submitter: groctel
Maintainer: groctel
Last Packager: groctel
Votes: 5
Popularity: 0.002873
First Submitted: 2021-04-04 16:32 (UTC)
Last Updated: 2025-04-01 11:16 (UTC)

Latest Comments

groctel commented on 2025-04-01 08:55 (UTC)

Hey! Sorry for the confusion. I was absolutely sure that pybind11 was in depends, that's why I was defending the non-inclusion of these dependencies, considering them as transitive. This is now fixed :)

micwoj92 commented on 2025-03-17 18:49 (UTC)

It doesn't matter than these are transitive dependencies of pybind11. It is a makedep.
Direct link dependency:

$ ldd /usr/lib/python3.13/site-packages/mapbox_earcut.cpython-313-x86_64-linux-gnu.so
    linux-vdso.so.1 (0x000074057b2f8000)
    libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x000074057b021000)
    libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x000074057aff3000)
    libc.so.6 => /usr/lib/libc.so.6 (0x000074057ae01000)
    /usr/lib64/ld-linux-x86-64.so.2 (0x000074057b2fa000)
    libm.so.6 => /usr/lib/libm.so.6 (0x000074057ad09000)

groctel commented on 2025-03-15 19:15 (UTC)

These are transitive dependencies of pybind11

This is so that all direct dependencies are listed

After assessing that these dependencies are transitive, I need more than just a affirmation to make the change. How are you coming to the conclusion that these are direct dependencies? Reading through the filest, I can't see these more than transitive dependencies imported by pybind. Still, just to be sure:

printf "%d;%d\n" $(rg -i libc | wc -l) $(rg -i gcc | wc -l)
0;0

Asking again: Do you have a reproducer that fails without these two dependencies? If you have one, it would be very helpful.

micwoj92 commented on 2025-02-27 18:00 (UTC)

This is so that all direct dependencies are listed in depends array.

groctel commented on 2025-02-27 15:13 (UTC)

@micwoj92: These are transitive dependencies of pybind11. My clean-env builds of this package have never failed for this reason. This is the system I use: https://git.sr.ht/~groctel/pkgbuilds

Do you have a reproducer that fails without these two dependencies? Otherwise, I should not add them here as they're not needed.

micwoj92 commented on 2025-02-24 21:43 (UTC)

Please add gcc-libs and glibc to depends.

michael.platzer commented on 2021-07-21 15:53 (UTC)

With GCC 11 this package fails to compile with following error (repeated several times):

/home/michael/.cache/pacaur/python-mapbox-earcut/src/mapbox_earcut_python-0.12.10/include/mapbox/earcut.hpp:469:23: error: ‘numeric_limits’ is not a member of ‘std’
  469 |     double qx = -std::numeric_limits<double>::infinity();
      |                       ^~~~~~~~~~~~~~

The reason seems to be that some headers are less frequently included in libstdc++, see: https://www.gnu.org/software/gcc/gcc-11/porting_to.html

While waiting for an upstream fix, applying the following patch to the PKGBUILD fixes the issue:

diff --git a/PKGBUILD b/PKGBUILD
index b71f965..f8d72e3 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -33,6 +33,7 @@ prepare ()
 build ()
 {
        cd "$srcdir/$_name-$pkgver"
+       echo "#include <limits>" | cat - include/mapbox/earcut.hpp > tmp && mv tmp include/mapbox/earcut.hpp
        python setup.py build
 }

groctel commented on 2021-05-28 12:36 (UTC)

Thank you @fl0r1an! I've updated the dependencies :)

fl0r1an commented on 2021-05-27 21:13 (UTC)

I think there are 2 packages missing in the makedepends.

I made the package in a chroot and it says that the command git was not found and later, the command pip was not found. I added git and python-pip to the makedepends and then it worked.

Kind regards :)