Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BUILD: cross-compiling issue using crossenv #57945

Closed
1 task done
th0ma7 opened this issue Mar 21, 2024 · 8 comments
Closed
1 task done

BUILD: cross-compiling issue using crossenv #57945

th0ma7 opened this issue Mar 21, 2024 · 8 comments
Labels
Build Library building on various platforms

Comments

@th0ma7
Copy link

th0ma7 commented Mar 21, 2024

Installation check

Platform

Synology toolchain for any (x64, armv7, aarch64, ppc)

Installation Method

Built from source

pandas Version

2.0.3 and 2.2.1

Python Version

3.11.8

Installation Logs

Requirement already satisfied: pybind11==2.11.1 in /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages (2.11.1)
Requirement already satisfied: expandvars==0.12.0 in /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages (0.12.0)
Requirement already satisfied: python-dateutil==2.9.0.post0 in /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages (2.9.0.post0)
Requirement already satisfied: pytz==2024.1 in /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages (2024.1)
Collecting tzdata==2024.1
Downloading tzdata-2024.1-py2.py3-none-any.whl.metadata (1.4 kB)
Requirement already satisfied: six>=1.5 in /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages (from python-dateutil==2.9.0.post0) (1.16.0)
Downloading tzdata-2024.1-py2.py3-none-any.whl (345 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 345.4/345.4 kB 3.9 MB/s eta 0:00:00
Installing collected packages: tzdata
Successfully installed tzdata-2024.1
Requirement already satisfied: pybind11==2.11.1 in /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/lib/python3.11/site-packages (2.11.1)
Requirement already satisfied: expandvars==0.12.0 in /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/lib/python3.11/site-packages (0.12.0)
Requirement already satisfied: python-dateutil==2.9.0.post0 in /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/lib/python3.11/site-packages (2.9.0.post0)
Requirement already satisfied: pytz==2024.1 in /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/lib/python3.11/site-packages (2024.1)
Collecting tzdata==2024.1
Using cached tzdata-2024.1-py2.py3-none-any.whl.metadata (1.4 kB)
Requirement already satisfied: six>=1.5 in /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/lib/python3.11/site-packages (from python-dateutil==2.9.0.post0) (1.16.0)
Using cached tzdata-2024.1-py2.py3-none-any.whl (345 kB)
Installing collected packages: tzdata
Successfully installed tzdata-2024.1
===> Processing wheels of homeassistant
===> Downloading wheels from src/requirements-abi3.txt ...
===> pip download [pycryptodome], version [3.18.0]
INFO: File already exists [pycryptodome-3.18.0.tar.gz]
===> pip download [pycryptodomex], version [3.18.0]
INFO: File already exists [pycryptodomex-3.18.0.tar.gz]
===> Downloading wheels from src/requirements-crossenv.txt ...
===> pip download [pandas], version [2.2.1]
INFO: File already exists [pandas-2.2.1.tar.gz]
===> pip download [webrtcvad], version [2.0.10], URL: [git+https://github.com/wiseman/py-webrtcvad@3bd761332a9404f5c9276105070ee814c4428342#egg=webrtcvad==2.0.10]
WARNING: Skipping download URL - Downloaded at build time
===> Adding existing src/requirements-abi3.txt file as ABI-limited
===> Adding existing src/requirements-crossenv.txt file as cross-compiled (discarding any pure-python)
===> Adding existing src/requirements-pure.txt file as pure-python (discarding any cross-compiled)
===> Cross-compiling wheels
===> Python crossenv found: [/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/bin/activate]
===> pip crossenv found: [/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/bin/pip]
===> [pandas] --config-settings=editable-verbose=true
make[3]: Entering directory '/home/spksrc/py311-update/spksrc/spk/homeassistant'
===> _PYTHON_HOST_PLATFORM=x86_64-pc-linux-gnu /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/bin/pip wheel --disable-pip-version-check --no-binary :all: --find-links /home/spksrc/py311-update/spksrc/spk/homeassistant/../../distrib/pip --cache-dir /home/spksrc/py311-update/spksrc/spk/homeassistant/work-x64-7.1/pip --no-deps --wheel-dir /home/spksrc/py311-update/spksrc/spk/homeassistant/work-x64-7.1/wheelhouse --no-index --config-settings=editable-verbose=true --no-build-isolation pandas==2.2.1
Looking in links: /home/spksrc/py311-update/spksrc/spk/homeassistant/../../distrib/pip
Processing /home/spksrc/py311-update/spksrc/distrib/pip/pandas-2.2.1.tar.gz
Preparing metadata (pyproject.toml): started
Preparing metadata (pyproject.toml): finished with status 'done'
ERROR: Exception:
Traceback (most recent call last):
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/cli/base_command.py", line 180, in exc_logging_wrapper
status = run_func(*args)
^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/cli/req_command.py", line 245, in wrapper
return func(self, options, args)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/commands/wheel.py", line 147, in run
requirement_set = resolver.resolve(reqs, check_supported_wheels=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 95, in resolve
result = self._result = resolver.resolve(
^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_vendor/resolvelib/resolvers.py", line 546, in resolve
state = resolution.resolve(requirements, max_rounds=max_rounds)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_vendor/resolvelib/resolvers.py", line 397, in resolve
self._add_to_criteria(self.state.criteria, r, parent=None)
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_vendor/resolvelib/resolvers.py", line 173, in _add_to_criteria
if not criterion.candidates:
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_vendor/resolvelib/structs.py", line 156, in bool
return bool(self._sequence)
^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 155, in bool
return any(self)
^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 143, in
return (c for c in iterator if id(c) not in self._incompatible_ids)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 47, in _iter_built
candidate = func()
^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 182, in _make_candidate_from_link
base: Optional[BaseCandidate] = self._make_base_candidate_from_link(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 228, in _make_base_candidate_from_link
self._link_candidate_cache[link] = LinkCandidate(
^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 290, in init
super().init(
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 156, in init
self.dist = self._prepare()
^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 222, in _prepare
dist = self._prepare_distribution()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 301, in _prepare_distribution
return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/operations/prepare.py", line 525, in prepare_linked_requirement
return self._prepare_linked_requirement(req, parallel_builds)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/operations/prepare.py", line 640, in _prepare_linked_requirement
dist = _get_prepared_distribution(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution
abstract_dist.prepare_distribution_metadata(
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/distributions/sdist.py", line 67, in prepare_distribution_metadata
self.req.prepare_metadata()
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/req/req_install.py", line 579, in prepare_metadata
self.metadata_directory = generate_metadata(
^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/operations/build/metadata.py", line 35, in generate_metadata
distinfo_dir = backend.prepare_metadata_for_build_wheel(metadata_dir)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_internal/utils/misc.py", line 766, in prepare_metadata_for_build_wheel
return super().prepare_metadata_for_build_wheel(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_impl.py", line 186, in prepare_metadata_for_build_wheel
return self._call_hook('prepare_metadata_for_build_wheel', {
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_impl.py", line 321, in _call_hook
raise BackendUnavailable(data.get('traceback', ''))
pip._vendor.pyproject_hooks._impl.BackendUnavailable: Traceback (most recent call last):
File "/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/build/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 77, in _build_backend
obj = import_module(mod_path)
^^^^^^^^^^^^^^^^^^^^^^^
File "/home/spksrc/py311-update/spksrc/native/python311/work-native/install/usr/local/lib/python3.11/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "", line 1204, in _gcd_import
File "", line 1176, in _find_and_load
File "", line 1140, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'mesonpy'

make[3]: *** [../../mk/spksrc.wheel.mk:203: cross-compile-wheel-pandas] Error 2
make[3]: Leaving directory '/home/spksrc/py311-update/spksrc/spk/homeassistant'
make[2]: *** [../../mk/spksrc.wheel.mk:144: build_wheel_target] Error 1
make[2]: Leaving directory '/home/spksrc/py311-update/spksrc/spk/homeassistant'
make[1]: *** [../../mk/spksrc.spk.mk:719: build-arch-x64-7.1] Error 1
make[1]: Leaving directory '/home/spksrc/py311-update/spksrc/spk/homeassistant'
make: *** [../../mk/spksrc.spk.mk:713: arch-x64-7.1] Error 2

@th0ma7 th0ma7 added Build Library building on various platforms Needs Triage Issue that has not been reviewed by a pandas team member labels Mar 21, 2024
@th0ma7
Copy link
Author

th0ma7 commented Mar 21, 2024

Associated PR (although code is in my local tree) SynoCommunity/spksrc#6040

@lithomas1
Copy link
Member

Can you provide your build command?

Looking at the error, you are missing the meson/meson-python dependencies.

@lithomas1 lithomas1 added Needs Info Clarification about behavior needed to assess issue and removed Needs Triage Issue that has not been reviewed by a pandas team member labels Mar 21, 2024
@th0ma7
Copy link
Author

th0ma7 commented Mar 23, 2024

Indeed it was missing, thnx now added:

make[3]: Entering directory '/home/spksrc/py311-update/spksrc/spk/homeassistant'
===>  _PYTHON_HOST_PLATFORM=x86_64-pc-linux-gnu /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/bin/pip wheel --disable-pip-version-check --no-binary :all: --find-links /home/spksrc/py311-update/spksrc/spk/homeassistant/../../distrib/pip --cache-dir /home/spksrc/py311-update/spksrc/spk/homeassistant/work-x64-7.1/pip --no-deps --wheel-dir /home/spksrc/py311-update/spksrc/spk/homeassistant/work-x64-7.1/wheelhouse --no-index --no-clean --config-settings=editable-verbose=true --no-build-isolation pandas==2.2.1
Looking in links: /home/spksrc/py311-update/spksrc/spk/homeassistant/../../distrib/pip
Processing /home/spksrc/py311-update/spksrc/distrib/pip/pandas-2.2.1.tar.gz
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'error'
  error: subprocess-exited-with-error
  
  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [10 lines of output]
      + meson setup /tmp/pip-wheel-8eh27d9c/pandas_598e5b7c95ba46e28cbfac20f70c52d9 /tmp/pip-wheel-8eh27d9c/pandas_598e5b7c95ba46e28cbfac20f70c52d9/.mesonpy-y9035jpi -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md --vsenv --native-file=/tmp/pip-wheel-8eh27d9c/pandas_598e5b7c95ba46e28cbfac20f70c52d9/.mesonpy-y9035jpi/meson-python-native-file.ini
      The Meson build system
      Version: 1.4.0
      Source dir: /tmp/pip-wheel-8eh27d9c/pandas_598e5b7c95ba46e28cbfac20f70c52d9
      Build dir: /tmp/pip-wheel-8eh27d9c/pandas_598e5b7c95ba46e28cbfac20f70c52d9/.mesonpy-y9035jpi
      Build type: native build
      
      ../meson.build:5:13: ERROR: Command `/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/bin/python /tmp/pip-wheel-8eh27d9c/pandas_598e5b7c95ba46e28cbfac20f70c52d9/generate_version.py --print` failed with status 1.
      
      A full log can be found at /tmp/pip-wheel-8eh27d9c/pandas_598e5b7c95ba46e28cbfac20f70c52d9/.mesonpy-y9035jpi/meson-logs/meson-log.txt
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

So from here I now added --no-clean to pip but still the meson-log.txt gets deleted. Actually the whole .meson-* is deleted from the temporary folder. Any arguments I can pass at pip build time so meson's files do not get deleted?

@th0ma7
Copy link
Author

th0ma7 commented Mar 23, 2024

I was able to keep the log file by setting-up the build directory: --config-settings=builddir=build

Build started at 2024-03-23T13:48:57.608601
Main binary: /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/bin/python
Build Options: -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md -Dvsenv=True --cross-file=/home/spksrc/py311-update/
spksrc/spk/homeassistant/work-x64-7.1/tc_vars.meson --native-file=/tmp/pip-wheel-s1xttpye/pandas_2f0e7fd58d5b45ebaf8fb7d83
edf1917/build/meson-python-native-file.ini
Python system: Linux
The Meson build system
Version: 1.4.0
Source dir: /tmp/pip-wheel-s1xttpye/pandas_2f0e7fd58d5b45ebaf8fb7d83edf1917
Build dir: /tmp/pip-wheel-s1xttpye/pandas_2f0e7fd58d5b45ebaf8fb7d83edf1917/build
Build type: cross build
Running command: /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/bin/python /tmp/pip-wheel-s1xt
tpye/pandas_2f0e7fd58d5b45ebaf8fb7d83edf1917/generate_version.py --print
--- stdout ---

--- stderr ---
Traceback (most recent call last):
  File "/tmp/pip-wheel-s1xttpye/pandas_2f0e7fd58d5b45ebaf8fb7d83edf1917/generate_version.py", line 8, in <module>
    import versioneer
ModuleNotFoundError: No module named 'versioneer'



../meson.build:5:13: ERROR: Command `/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/bin/python
 /tmp/pip-wheel-s1xttpye/pandas_2f0e7fd58d5b45ebaf8fb7d83edf1917/generate_version.py --print` failed with status 1.

@th0ma7
Copy link
Author

th0ma7 commented Mar 23, 2024

Now added versioneer to my crossenv, with the following result (progress I guess):

EDIT: Note that I found curious the Visual Studio environment message.

===>  _PYTHON_HOST_PLATFORM=x86_64-pc-linux-gnu /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/bin/pip wheel --disable-pip-version-check --no-binary :all: --find-links /home/spksrc/py311-update/spksrc/spk/homeassistant/../../distrib/pip --cache-dir /home/spksrc/py311-update/spksrc/spk/homeassistant/work-x64-7.1/pip --no-deps --wheel-dir /home/spksrc/py311-update/spksrc/spk/homeassistant/work-x64-7.1/wheelhouse --no-index --no-clean --config-settings=builddir=build --config-settings=editable-verbose=true --config-settings=setup-args=--cross-file=/home/spksrc/py311-update/spksrc/spk/homeassistant/work-x64-7.1/tc_vars.meson --no-build-isolation pandas==2.2.1
Looking in links: /home/spksrc/py311-update/spksrc/spk/homeassistant/../../distrib/pip
Processing /home/spksrc/py311-update/spksrc/distrib/pip/pandas-2.2.1.tar.gz
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'error'
  error: subprocess-exited-with-error
  
  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [117 lines of output]
      + meson setup /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287 /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/build -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md --vsenv --cross-file=/home/spksrc/py311-update/spksrc/spk/homeassistant/work-x64-7.1/tc_vars.meson --native-file=/tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/build/meson-python-native-file.ini
      The Meson build system
      Version: 1.4.0
      Source dir: /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287
      Build dir: /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/build
      Build type: cross build
      Project name: pandas
      Project version: 2.2.1
      C compiler for the host machine: /home/spksrc/py311-update/spksrc/toolchain/syno-x64-7.1/work/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-gcc (gcc 8.5.0 "x86_64-pc-linux-gnu-gcc (GCC) 8.5.0")
      C linker for the host machine: /home/spksrc/py311-update/spksrc/toolchain/syno-x64-7.1/work/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-gcc ld.bfd 2.30
      C++ compiler for the host machine: /home/spksrc/py311-update/spksrc/toolchain/syno-x64-7.1/work/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-g++ (gcc 8.5.0 "x86_64-pc-linux-gnu-g++ (GCC) 8.5.0")
      C++ linker for the host machine: /home/spksrc/py311-update/spksrc/toolchain/syno-x64-7.1/work/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-g++ ld.bfd 2.30
      Cython compiler for the host machine: cython (cython 0.29.37)
      C compiler for the build machine: cc (gcc 10.2.1 "cc (Debian 10.2.1-6) 10.2.1 20210110")
      C linker for the build machine: cc ld.bfd 2.35.2
      C++ compiler for the build machine: c++ (gcc 10.2.1 "c++ (Debian 10.2.1-6) 10.2.1 20210110")
      C++ linker for the build machine: c++ ld.bfd 2.35.2
      Cython compiler for the build machine: cython (cython 0.29.37)
      Build machine cpu family: x86_64
      Build machine cpu: x86_64
      Host machine cpu family: x86_64
      Host machine cpu: x86_64
      Target machine cpu family: x86_64
      Target machine cpu: x86_64
      Program python3 found: YES (/home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/bin/python)
      Found pkg-config: NO
      Run-time dependency python found: YES 3.11
      Build targets in project: 53
      
      pandas 2.2.1
      
        User defined options
          Cross files : /home/spksrc/py311-update/spksrc/spk/homeassistant/work-x64-7.1/tc_vars.meson
          Native files: /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/build/meson-python-native-file.ini
          buildtype   : release
          vsenv       : true
          b_ndebug    : if-release
          b_vscrt     : md
      
      Found ninja-1.10.1 at /usr/bin/ninja
      
      Visual Studio environment is needed to run Ninja. It is recommended to use Meson wrapper:
      /home/spksrc/py311-update/spksrc/spk/python311/work-x64-7.1/crossenv/cross/bin/meson compile -C .
      + /usr/bin/ninja
      [1/151] Generating pandas/_libs/khash_primitive_helper_pxi with a custom command
      [2/151] Generating pandas/_libs/algos_common_helper_pxi with a custom command
      [3/151] Generating pandas/_libs/intervaltree_helper_pxi with a custom command
      [4/151] Generating pandas/_libs/sparse_op_helper_pxi with a custom command
      [5/151] Generating pandas/_libs/hashtable_class_helper_pxi with a custom command
      [6/151] Generating pandas/_libs/algos_take_helper_pxi with a custom command
      [7/151] Copying file pandas/__init__.py
      [8/151] Generating pandas/_libs/hashtable_func_helper_pxi with a custom command
      [9/151] Generating pandas/_libs/index_class_helper_pxi with a custom command
      [10/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/base.pyx
      [11/151] Compiling C object pandas/_libs/tslibs/parsing.cpython-311-x86_64-linux-gnu.so.p/.._src_parser_tokenizer.c.o
      [12/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/ccalendar.pyx
      [13/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/dtypes.pyx
      [14/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/np_datetime.pyx
      [15/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/nattype.pyx
      [16/151] Compiling C object pandas/_libs/tslibs/base.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_base.pyx.c.o
      [17/151] Linking target pandas/_libs/tslibs/base.cpython-311-x86_64-linux-gnu.so
      [18/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/conversion.pyx
      [19/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/fields.pyx
      [20/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/strptime.pyx
      [21/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/parsing.pyx
      [22/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/offsets.pyx
      [23/151] Compiling C object pandas/_libs/tslibs/ccalendar.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_ccalendar.pyx.c.o
      [24/151] Linking target pandas/_libs/tslibs/ccalendar.cpython-311-x86_64-linux-gnu.so
      [25/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/timestamps.pyx
      [26/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/timedeltas.pyx
      [27/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/timezones.pyx
      [28/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/period.pyx
      [29/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/tzconversion.pyx
      [30/151] Compiling C object pandas/_libs/tslibs/np_datetime.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_np_datetime.pyx.c.o
      [31/151] Linking target pandas/_libs/tslibs/np_datetime.cpython-311-x86_64-linux-gnu.so
      [32/151] Compiling C object pandas/_libs/tslibs/dtypes.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_dtypes.pyx.c.o
      [33/151] Linking target pandas/_libs/tslibs/dtypes.cpython-311-x86_64-linux-gnu.so
      [34/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/algos.pyx
      FAILED: pandas/_libs/algos.cpython-311-x86_64-linux-gnu.so.p/pandas/_libs/algos.pyx.c
      cython -M --fast-fail -3 --include-dir /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/build/pandas/_libs '-X always_allow_keywords=true' /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/algos.pyx -o pandas/_libs/algos.cpython-311-x86_64-linux-gnu.so.p/pandas/_libs/algos.pyx.c
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
          # each incremental i value can be looked up in the lexsort_indexer
          # array that we sorted previously, which gives us the location of
          # that sorted value for retrieval back from the original
          # values / masked_vals arrays
          # TODO(cython3): de-duplicate once cython supports conditional nogil
          with gil(numeric_object_t is object):
                 ^
      ------------------------------------------------------------
      
      /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/algos.pyx:1147:12: Expected ':', found '('
      [35/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/tslibs/vectorized.pyx
      [36/151] Compiling C object pandas/_libs/tslibs/nattype.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_nattype.pyx.c.o
      [37/151] Compiling Cython source /tmp/pip-wheel-cpma2d0r/pandas_1745047ec6b24424b3bcdf2679ac0287/pandas/_libs/arrays.pyx
      [38/151] Compiling C object pandas/_libs/tslibs/conversion.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_conversion.pyx.c.o
      pandas/_libs/tslibs/conversion.cpython-311-x86_64-linux-gnu.so.p/pandas/_libs/tslibs/conversion.pyx.c: In function ‘__pyx_pf_6pandas_5_libs_6tslibs_10conversion_cast_from_unit_vectorized.isra.48’:
      pandas/_libs/tslibs/conversion.cpython-311-x86_64-linux-gnu.so.p/pandas/_libs/tslibs/conversion.pyx.c:2398:79: warning: ‘__pyx_v_i’ may be used uninitialized in this function [-Wmaybe-uninitialized]
           __Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, is_list, wraparound, boundscheck) :\
                                                                                     ^~
           (is_list ? (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL) :\
      
      pandas/_libs/tslibs/conversion.cpython-311-x86_64-linux-gnu.so.p/pandas/_libs/tslibs/conversion.pyx.c:3853:14: note: ‘__pyx_v_i’ was declared here
         Py_ssize_t __pyx_v_i;
                    ^~~~~~~~~
      [39/151] Compiling C object pandas/_libs/tslibs/timezones.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_timezones.pyx.c.o
      [40/151] Compiling C object pandas/_libs/tslibs/fields.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_fields.pyx.c.o
      [41/151] Compiling C object pandas/_libs/tslibs/parsing.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_parsing.pyx.c.o
      [42/151] Compiling C object pandas/_libs/tslibs/tzconversion.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_tzconversion.pyx.c.o
      [43/151] Compiling C object pandas/_libs/tslibs/strptime.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_strptime.pyx.c.o
      [44/151] Compiling C object pandas/_libs/tslibs/period.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_period.pyx.c.o
      [45/151] Compiling C object pandas/_libs/tslibs/timestamps.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_timestamps.pyx.c.o
      [46/151] Compiling C object pandas/_libs/tslibs/timedeltas.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_timedeltas.pyx.c.o
      [47/151] Compiling C object pandas/_libs/tslibs/offsets.cpython-311-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_tslibs_offsets.pyx.c.o
      ninja: build stopped: subcommand failed.
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
make[3]: *** [../../mk/spksrc.wheel.mk:203: cross-compile-wheel-pandas] Error 1
make[3]: Leaving directory '/home/spksrc/py311-update/spksrc/spk/homeassistant'
make[2]: *** [../../mk/spksrc.wheel.mk:144: build_wheel_target] Error 1
make[2]: Leaving directory '/home/spksrc/py311-update/spksrc/spk/homeassistant'
make[1]: *** [../../mk/spksrc.spk.mk:719: build-arch-x64-7.1] Error 1
make[1]: Leaving directory '/home/spksrc/py311-update/spksrc/spk/homeassistant'
make: *** [../../mk/spksrc.spk.mk:713: arch-x64-7.1] Error 2

@lithomas1
Copy link
Member

You need Cython 3 to be able to compile pandas. It looks like you have Cython 0.29.37.

@lithomas1 lithomas1 removed the Needs Info Clarification about behavior needed to assess issue label Mar 26, 2024
@lithomas1
Copy link
Member

Going to close as I'm assuming the issue is fixed.

Feel free to comment if you're experiencing any other issues and I'll reopen this.

@th0ma7
Copy link
Author

th0ma7 commented Mar 26, 2024

Thnx for the help and I'll reopen if i need further assistance but i believe my concerns are now answered.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Build Library building on various platforms
Projects
None yet
Development

No branches or pull requests

2 participants