delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2023/09/12/22:32:11

X-Recipient: archive-cygwin AT delorie DOT com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 615793858288
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
s=default; t=1694572330;
bh=/0sLE+XPtuTFxbzC8NdsPGabVinEReywDqIp4ffxIpI=;
h=References:In-Reply-To:Date:Subject:To:List-Id:List-Unsubscribe:
List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:
From;
b=PnXSjI9TDl6rRVIk59P7StOrkUBrFW5irTkIXRpNx1MAfBDZekBvD/1VQ/gka1fhc
WtnM8DcjVcfraPFd3ykzQ7ACa5OZWWveY8VRcIqaMSGSqgAzWKWdtOCci1+6k8+PSM
OIKtWuY8Dps+Xs6VZZ1XFNq0gU1eRiAL1altEANI=
X-Original-To: cygwin AT cygwin DOT com
Delivered-To: cygwin AT cygwin DOT com
DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 5E2273858D3C
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1694572285; x=1695177085;
h=to:subject:message-id:date:from:in-reply-to:references:mime-version
:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
bh=GXLSpcD6lSUs1RdS8rzFfG66pM5E7BaghLLsWGY5tSw=;
b=SDB/aA/bqKbefgN/sr4WSw//Mj0PvNVx0FVGi0LNyEGkIWecM3MBKLysu20AIB0MCM
229HZnOrgLxVTKpPxArOweg/n7GoB4iR6SCXCh74/kKdUq7qzYv/8Kth0H+BbbJUSWgc
Cj5t9igciepoUW8i7Oyy3ijUl+ir/RQQebWKLqiZeuyXNfLQWVIeP2jyHLi33CxOwlT/
1zahN0DiJJ7kFpb3Vt6VNiHmEJjjG4xuFDQ+RQs6/xtCDcpbu2PX6fB5+FT1wsQ0R0+l
tqNaaB0Fl9buwpN79dLsew0D6BMkUP1fgXbEqXVy+rI2ZJA3X+3/iOsSAmkQhNA6nWit
TeFA==
X-Gm-Message-State: AOJu0YxJ6Q7MjYGUif0gJh7Wi5MEwgwQmPQYB2vISz6wqPXJt8+YGm9q
OGR8R2H7yB2rPq1znzxJic+qY7HfKLkbKMZC+qP/Lt1bix2f2g==
X-Google-Smtp-Source: AGHT+IF+bHeZ3kpME1Fam6V405AFMlFjnZjEo5Xm2ESy4iGe5EDT3COKA17KUnr1h8HWLCahyWugxZMqO6i26WhIaaE=
X-Received: by 2002:a05:6870:b413:b0:1ba:d044:8a4 with SMTP id
x19-20020a056870b41300b001bad04408a4mr1439747oap.18.1694572285151; Tue, 12
Sep 2023 19:31:25 -0700 (PDT)
MIME-Version: 1.0
References: <CALUJTM6nL8L-KbfFfmzqopPocTtz0GjaU5a+aNMnHa2EZ_ME-Q AT mail DOT gmail DOT com>
<b374673d-e575-7d09-93e6-427a8885e550 AT Shaw DOT ca>
In-Reply-To: <b374673d-e575-7d09-93e6-427a8885e550@Shaw.ca>
Date: Tue, 12 Sep 2023 21:31:11 -0500
Message-ID: <CALUJTM7FF+5QDkR02-BceHxekoOLgiXt4FvH2AvZWkOM6Sdocw@mail.gmail.com>
Subject: Re: Python 3.9 shapely package build failed
To: cygwin AT cygwin DOT com
X-Spam-Status: No, score=-0.6 required=5.0 tests=BAYES_00, DKIM_SIGNED,
DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, HTML_MESSAGE,
RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS,
TXREP autolearn=ham autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on
server2.sourceware.org
X-Content-Filtered-By: Mailman/MimeDel 2.1.30
X-BeenThere: cygwin AT cygwin DOT com
X-Mailman-Version: 2.1.30
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-request AT cygwin DOT com?subject=help>
List-Subscribe: <https://cygwin.com/mailman/listinfo/cygwin>,
<mailto:cygwin-request AT cygwin DOT com?subject=subscribe>
From: Joel Breazeale via Cygwin <cygwin AT cygwin DOT com>
Reply-To: Joel Breazeale <joel DOT breazeale AT gmail DOT com>
Sender: "Cygwin" <cygwin-bounces+archive-cygwin=delorie DOT com AT cygwin DOT com>
X-MIME-Autoconverted: from base64 to 8bit by delorie.com id 38D2WBnv020874

Brian,

I was not aware of the cygcheck command.  I won't forget it!  Once
libgeos-devel-3.11.1-1 was installed the build worked great!

Thank you,
Joel Breazeale

On Tue, Sep 12, 2023 at 9:02 PM Brian Inglis <Brian DOT Inglis AT shaw DOT ca> wrote:

> On 2023-09-12 18:58, Joel Breazeale via Cygwin wrote:
> > The shapely Python 3.9 package is failing to build.  Please see the
> > messages in red and the one in green below:
> >
> >
> > [bin]$ /usr/local/bin/pip3.9 install shapely
> > Collecting shapely
> >    Using cached shapely-2.0.1.tar.gz (275 kB)
> >    Installing build dependencies ... done
> >    Getting requirements to build wheel ... done
> >    Installing backend dependencies ... done
> >    Preparing metadata (pyproject.toml) ... done
> > Requirement already satisfied: numpy>=1.14 in
> > /usr/local/lib/python3.9/site-packages (from shapely) (1.25.2)
> > Building wheels for collected packages: shapely
> >    Building wheel for shapely (pyproject.toml) ... error
> >    error: *subprocess-exited-with-error*
> >
> >
> >    × Building wheel for shapely (pyproject.toml) did not run
> successfully.
> >    │ exit code: 1
> >    ╰─> [103 lines of output]
> >        <string>:8: DeprecationWarning: pkg_resources is deprecated as an
> > API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
> >        Could not find geos-config executable. Either append the path to
> > geos-config to PATH or manually provide the include_dirs, library_dirs,
> > libraries and other link args for compiling against a GEOS version >=3.5.
> >        running bdist_wheel
> >        running build
> >        running build_py
> >        creating build
> >        creating build/lib.cygwin-3.4.9-x86_64-cpython-39
> >        creating build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/affinity.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/constructive.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/coordinates.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/coords.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/creation.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/decorators.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/errors.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/geos.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/io.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/linear.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/measurement.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/ops.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/plotting.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/predicates.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/prepared.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/set_operations.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/speedups.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/strtree.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/testing.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/validation.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/wkb.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/wkt.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/_enum.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/_geometry.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/_ragged_array.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/_version.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/__init__.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        creating
> build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/algorithms
> >        copying shapely/algorithms/cga.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/algorithms
> >        copying shapely/algorithms/polylabel.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/algorithms
> >        copying shapely/algorithms/__init__.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/algorithms
> >        creating build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/geometry
> >        copying shapely/geometry/base.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/geometry
> >        copying shapely/geometry/collection.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/geometry
> >        copying shapely/geometry/conftest.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/geometry
> >        copying shapely/geometry/geo.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/geometry
> >        copying shapely/geometry/linestring.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/geometry
> >        copying shapely/geometry/multilinestring.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/geometry
> >        copying shapely/geometry/multipoint.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/geometry
> >        copying shapely/geometry/multipolygon.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/geometry
> >        copying shapely/geometry/point.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/geometry
> >        copying shapely/geometry/polygon.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/geometry
> >        copying shapely/geometry/__init__.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/geometry
> >        creating build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/common.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_constructive.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_coordinates.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_creation.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_creation_indices.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_geometry.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_io.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_linear.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_measurement.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_misc.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_plotting.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_predicates.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_ragged_array.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_set_operations.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_strtree.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/test_testing.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        copying shapely/tests/__init__.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests
> >        creating
> build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/vectorized
> >        copying shapely/vectorized/__init__.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/vectorized
> >        creating
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_collection.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_coords.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_decimal.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_emptiness.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_format.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_geometry_base.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_hash.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_linestring.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_multi.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_multilinestring.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_multipoint.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_multipolygon.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_point.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/test_polygon.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/tests/geometry/__init__.py ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/tests/geometry
> >        copying shapely/_geos.pxd ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        copying shapely/_pygeos_api.pxd ->
> > build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely
> >        UPDATING
> build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/_version.py
> >        set build/lib.cygwin-3.4.9-x86_64-cpython-39/shapely/_version.py
> to
> > '2.0.1'
> >        running build_ext
> >        building 'shapely.lib' extension
> >        creating build/temp.cygwin-3.4.9-x86_64-cpython-39
> >        creating build/temp.cygwin-3.4.9-x86_64-cpython-39/src
> >        gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3
> -Wall
> > -I/usr/include/python3.9
> >
> -I/tmp/pip-build-env-udfc5yaz/overlay/lib/python3.9/site-packages/numpy/core/include
> > -c src/c_api.c -o build/temp.cygwin-3.4.9-x86_64-cpython-39/src/c_api.o
> >        In file included from src/c_api.h:22,
> >                         from src/c_api.c:15:
> >        src/geos.h:15:10: fatal error: geos_c.h: No such file or directory
> >           15 | #include <geos_c.h>
> >              |          ^~~~~~~~~~
> >        compilation terminated.
> >        error: command '/usr/bin/gcc' failed with exit code 1
> >        [end of output]
> >
> >    note: This error originates from a subprocess, and is likely not a
> > problem with pip.
> >    ERROR: Failed building wheel for shapely
> > Failed to build shapely
> > ERROR: Could not build wheels for shapely, which is required to install
> > pyproject.toml-based projects
> > [bin]$
> >
> > I presume the inability to find geos-config then caused geos_c.h to not
> be
> > able to be found.
>
> Both are part of the same package.
>
> > I have shapely installed and working under Homebrew (Python 3.11.5),
> Oracle
> > Linux 9.2 under VirtualBox (Python 3.9.16) and Oracle Linux 8 (Python
> > 3.11.4), just not under cygwin.
> >
> > What do you think is the fix for this issue?
>
> $ cygcheck -p geos_c.h
> Found 3 matches for geos_c.h
> libgeos-devel-3.10.3-1 - libgeos-devel: Geometry Engine for Topology -
> (devel)
> libgeos-devel-3.11.0-1 - libgeos-devel: Geometry Engine for Topology -
> (devel)
> libgeos-devel-3.11.1-1 - libgeos-devel: Geometry Engine for Topology -
> (devel)
> $ cygcheck -p geos-config
> Found 3 matches for geos-config
> libgeos-devel-3.10.3-1 - libgeos-devel: Geometry Engine for Topology -
> (devel)
> libgeos-devel-3.11.0-1 - libgeos-devel: Geometry Engine for Topology -
> (devel)
> libgeos-devel-3.11.1-1 - libgeos-devel: Geometry Engine for Topology -
> (devel)
>
> Neither is installed, because to build library code you typically need to
> have
> installed a [lib]...-devel package, which other packages do not usually
> depend on.
>
> Check the prereqs in python, then check the Cygwin packages that provide
> packages with that root name, then install them, before trying pip
> install,
> which is outside of Cygwin packaging, so you need to do everything
> yourself!
>
> If in doubt, you can just install everything which matches geos or
> whatever!
>
> --
> Take care. Thanks, Brian Inglis              Calgary, Alberta, Canada
>
> La perfection est atteinte                   Perfection is achieved
> non pas lorsqu'il n'y a plus rien à ajouter  not when there is no more to
> add
> mais lorsqu'il n'y a plus rien à retirer     but when there is no more to
> cut
>                                  -- Antoine de Saint-Exupéry
>
>

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019