mesonbuild / meson

The Meson Build System
http://mesonbuild.com
Apache License 2.0
5.3k stars 1.52k forks source link

pandas install failing #13166

Closed keplerridge closed 2 weeks ago

keplerridge commented 2 weeks ago

Describe the bug When I run pip install pandas it will run through the install and go through installing build dependencies, getting requirements to build wheel, installing backend dependencies, and then have an error in preparing metadata (pyproject.toml)

To Reproduce I have tried for an hour now to find the meson.build file and can't I don't know what to do to find it.

Expected behavior I expected to get a successful build and installation of pandas

system parameters Windows 11 Home Python 3.11.5 meson 1.4.0

eli-schwartz commented 2 weeks ago

Can you please include the complete error message that you got? :)

"an error in preparing metadata (pyproject.toml)" isn't sufficient information to determine what happened. There should be a description of the backend error and possibly a traceback.

If in doubt, simply copy/paste the entire command prompt output session starting with the pip install command and including all pip output.

keplerridge commented 2 weeks ago

Here is the whole command prompt

$ pip install pandas
Collecting pandas
  Using cached pandas-2.2.2.tar.gz (4.4 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... error
  error: subprocess-exited-with-error

  Preparing metadata (pyproject.toml) did not run successfully.
  exit code: 2

  [131 lines of output]
  + meson setup C:/Users/keple/AppData/Local/Temp/pip-install-x89q3p8w/pandas_dcb17726cfb647b99bdfcf9fbd51393f C:/Users/keple/AppData/Local/Temp/pip-install-x89q3p8w/pandas_dcb17726cfb647b99bdfcf9fbd51393f/.mesonpy-fon2y08r/build -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md --vsenv --native-file=C:/Users/keple/AppData/Local/Temp/pip-install-x89q3p8w/pandas_dcb17726cfb647b99bdfcf9fbd51393f/.mesonpy-fon2y08r/build/meson-python-native-file.ini
  Traceback (most recent call last):
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/mesonmain.py", line 194, in run
      return options.run_func(options)
             ^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/msetup.py", line 358, in run
      app.generate()
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/msetup.py", line 183, in generate
      return self._generate(env, capture, vslite_ctx)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/msetup.py", line 228, in _generate
      intr.run()
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreter/interpreter.py", line 2997, in run
      super().run()
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 164, in run
      self.evaluate_codeblock(self.ast, start=1)
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 190, in evaluate_codeblock
      raise e
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 182, in evaluate_codeblock
      self.evaluate_statement(cur)
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 196, in evaluate_statement
      return self.function_call(cur)
             ^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 521, in function_call
      res = func(node, func_args, kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/decorators.py", line 277, in wrapper
      return f(*nargs, **wrapped_kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/decorators.py", line 596, in wrapper
      return f(*wrapped_args, **wrapped_kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreter/interpreter.py", line 2409, in func_subdir
      self.evaluate_codeblock(codeblock)
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 190, in evaluate_codeblock
      raise e
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 182, in evaluate_codeblock
      self.evaluate_statement(cur)
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 196, in evaluate_statement
      return self.function_call(cur)
             ^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 521, in function_call
      res = func(node, func_args, kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/decorators.py", line 277, in wrapper
      return f(*nargs, **wrapped_kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/decorators.py", line 596, in wrapper
      return f(*wrapped_args, **wrapped_kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreter/interpreter.py", line 2409, in func_subdir
      self.evaluate_codeblock(codeblock)
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 190, in evaluate_codeblock
      raise e
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 182, in evaluate_codeblock
      self.evaluate_statement(cur)
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 196, in evaluate_statement
      return self.function_call(cur)
             ^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 521, in function_call
      res = func(node, func_args, kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/decorators.py", line 277, in wrapper
      return f(*nargs, **wrapped_kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/decorators.py", line 596, in wrapper
      return f(*wrapped_args, **wrapped_kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreter/interpreter.py", line 2409, in func_subdir
      self.evaluate_codeblock(codeblock)
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 190, in evaluate_codeblock
      raise e
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 182, in evaluate_codeblock
      self.evaluate_statement(cur)
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 228, in evaluate_statement
      self.evaluate_foreach(cur)
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 472, in evaluate_foreach
      self.evaluate_codeblock(node.block)
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 190, in evaluate_codeblock
      raise e
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 182, in evaluate_codeblock
      self.evaluate_statement(cur)
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 200, in evaluate_statement
      return self.method_call(cur)
             ^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/interpreterbase.py", line 550, in method_call
      res = obj.method_call(method_name, args, kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/baseobjects.py", line 94, in method_call
      return method(args, kwargs)
             ^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/interpreterbase/decorators.py", line 127, in wrapped
      return f(*wrapped_args, **wrapped_kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/modules/python.py", line 155, in extension_module_method
      pydep = self._dependency_method_impl({})
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/modules/python.py", line 189, in _dependency_method_impl
      dep = find_external_dependency('python', self.interpreter.environment, new_kwargs, candidates)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/dependencies/detect.py", line 124, in find_external_dependency
      d = c()
          ^^^
    File "C:/Users/keple/AppData/Local/Temp/pip-build-env-6013nojb/overlay/lib/python3.11/site-packages/mesonbuild/dependencies/python.py", line 216, in __init__
      if mesonlib.is_windows() and self.get_windows_python_arch().endswith('64') and mesonlib.version_compare(self.version, '<3.12'):
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  AttributeError: 'NoneType' object has no attribute 'endswith'
  The Meson build system
  Version: 1.2.1
  Source dir: C:/Users/keple/AppData/Local/Temp/pip-install-x89q3p8w/pandas_dcb17726cfb647b99bdfcf9fbd51393f
  Build dir: C:/Users/keple/AppData/Local/Temp/pip-install-x89q3p8w/pandas_dcb17726cfb647b99bdfcf9fbd51393f/.mesonpy-fon2y08r/build
  Build type: native build
  Project name: pandas
  Project version: 2.2.2
  Activating VS 17.6.4
  C compiler for the host machine: cl (msvc 19.36.32535 "Microsoft (R) C/C++ Optimizing Compiler Version 19.36.32535 for x64")
  C linker for the host machine: link link 14.36.32535.0
  C++ compiler for the host machine: cl (msvc 19.36.32535 "Microsoft (R) C/C++ Optimizing Compiler Version 19.36.32535 for x64")
  C++ linker for the host machine: link link 14.36.32535.0
  Cython compiler for the host machine: cython (cython 3.0.5)
  Host machine cpu family: x86_64
  Host machine cpu: x86_64
  Program python found: YES (c:/msys64/mingw64/bin/python.exe)
  Did not find pkg-config by name 'pkg-config'
  Found Pkg-config: NO
  Unknown Windows Python platform 'mingw_x86_64'
  Unknown Windows Python platform 'mingw_x86_64'

  ../../pandas/_libs/tslibs/meson.build:32:7: ERROR: Unhandled python exception

      This is a Meson bug and should be reported!
  [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.
eli-schwartz commented 2 weeks ago

Duplicate of #12547

eli-schwartz commented 2 weeks ago

This was fixed in meson 1.3.1 but pandas pins an old version as a build dependency.

@lithomas1

lithomas1 commented 1 week ago

Thanks for the reminder, I'll bump meson pandas side.