You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Unable to install requirements.txt on MacOS arm64: ERROR: Could not build wheels for multidict, which is required to install pyproject.toml-based projects
#1
Open
jwmatthews opened this issue
Mar 8, 2024
· 1 comment
python3 -m venv env
source env/bin/activate
pip3 install -r ./requirements.txt
...
Building wheels for collected packages: frozenlist, multidict, watchdog, yarl
Building wheel for frozenlist (pyproject.toml) ... done
Created wheel for frozenlist: filename=frozenlist-1.4.0-cp312-cp312-macosx_13_0_arm64.whl size=46117 sha256=8646332a10550c972c9dad4d0d3571445311784fed9a9b7a2d6476519a418089
Stored in directory: /Users/jmatthews/Library/Caches/pip/wheels/f1/9c/94/9386cb0ea511a93226456388d41d35f1c24ba15a62ffd7b1ef
Building wheel for multidict (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for multidict (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [200 lines of output]
*********************
* Accelerated build *
*********************
running bdist_wheel
running build
running build_py
creating build
creating build/lib.macosx-13.0-arm64-cpython-312
creating build/lib.macosx-13.0-arm64-cpython-312/multidict
copying multidict/_multidict_py.py -> build/lib.macosx-13.0-arm64-cpython-312/multidict
copying multidict/_abc.py -> build/lib.macosx-13.0-arm64-cpython-312/multidict
copying multidict/__init__.py -> build/lib.macosx-13.0-arm64-cpython-312/multidict
copying multidict/_multidict_base.py -> build/lib.macosx-13.0-arm64-cpython-312/multidict
copying multidict/_compat.py -> build/lib.macosx-13.0-arm64-cpython-312/multidict
running egg_info
writing multidict.egg-info/PKG-INFO
writing dependency_links to multidict.egg-info/dependency_links.txt
writing top-level names to multidict.egg-info/top_level.txt
reading manifest file 'multidict.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files matching '*.pyc' found anywhere in distribution
warning: no previously-included files found matching 'multidict/_multidict.html'
warning: no previously-included files found matching 'multidict/*.so'
warning: no previously-included files found matching 'multidict/*.pyd'
warning: no previously-included files found matching 'multidict/*.pyd'
no previously-included directories found matching 'docs/_build'
adding license file 'LICENSE'
writing manifest file 'multidict.egg-info/SOURCES.txt'
/private/var/folders/l1/1b7gzz8n02b5nrtdq51bnj4r0000gn/T/pip-build-env-phylfbyk/overlay/lib/python3.12/site-packages/setuptools/command/build_py.py:207: _Warning: Package 'multidict._multilib' is absent from the `packages` configuration.
!!
********************************************************************************
############################
# Package would be ignored #
############################
Python recognizes 'multidict._multilib' as an importable package[^1],
but it is absent from setuptools' `packages` configuration.
This leads to an ambiguous overall configuration. If you want to distribute this
package, please make sure that 'multidict._multilib' is explicitly added
to the `packages` configuration field.
Alternatively, you can also rely on setuptools' discovery methods
(for example by using `find_namespace_packages(...)`/`find_namespace:`
instead of `find_packages(...)`/`find:`).
You can read more about "package discovery" on setuptools documentation page:
- https://setuptools.pypa.io/en/latest/userguide/package_discovery.html
If you don't want 'multidict._multilib' to be distributed and are
already explicitly excluding 'multidict._multilib' via
`find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
you can try to use `exclude_package_data`, or `include-package-data=False` in
combination with a more fine grained `package-data` configuration.
You can read more about "package data files" on setuptools documentation page:
- https://setuptools.pypa.io/en/latest/userguide/datafiles.html
[^1]: For Python, any directory (with suitable naming) can be imported,
even if it does not contain any `.py` files.
On the other hand, currently there is no concept of package data
directory, all directories are treated like packages.
********************************************************************************
!!
check.warn(importable)
copying multidict/__init__.pyi -> build/lib.macosx-13.0-arm64-cpython-312/multidict
copying multidict/py.typed -> build/lib.macosx-13.0-arm64-cpython-312/multidict
running build_ext
building 'multidict._multidict' extension
creating build/temp.macosx-13.0-arm64-cpython-312
creating build/temp.macosx-13.0-arm64-cpython-312/multidict
clang -fno-strict-overflow -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -O3 -Wall -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk -I/Users/jmatthews/git/jwmatthews/model-comparison/env/include -I/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.12/include/python3.12 -c multidict/_multidict.c -o build/temp.macosx-13.0-arm64-cpython-312/multidict/_multidict.o -O2 -std=c99 -Wall -Wsign-compare -Wconversion -fno-strict-aliasing -pedantic
In file included from multidict/_multidict.c:9:
multidict/_multilib/iter.h:225:20: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
multidict_iter_init()
^
void
In file included from multidict/_multidict.c:10:
multidict/_multilib/views.h:388:21: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
multidict_views_init()
^
void
multidict/_multidict.c:458:37: error: incompatible pointer to integer conversion initializing 'int' with an expression of type 'void *' [-Wint-conversion]
static _PyArg_Parser _parser = {NULL, _keywords, "getall", 0};
^~~~
/Library/Developer/CommandLineTools/usr/lib/clang/15.0.0/include/stddef.h:89:16: note: expanded from macro 'NULL'
# define NULL ((void*)0)
^~~~~~~~~~
multidict/_multidict.c:458:43: warning: incompatible pointer types initializing 'const char *' with an expression of type 'const char *const[3]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "getall", 0};
^~~~~~~~~
multidict/_multidict.c:458:54: warning: incompatible pointer types initializing 'const char *const *' with an expression of type 'char[7]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "getall", 0};
^~~~~~~~
multidict/_multidict.c:503:37: error: incompatible pointer to integer conversion initializing 'int' with an expression of type 'void *' [-Wint-conversion]
static _PyArg_Parser _parser = {NULL, _keywords, "getone", 0};
^~~~
/Library/Developer/CommandLineTools/usr/lib/clang/15.0.0/include/stddef.h:89:16: note: expanded from macro 'NULL'
# define NULL ((void*)0)
^~~~~~~~~~
multidict/_multidict.c:503:43: warning: incompatible pointer types initializing 'const char *' with an expression of type 'const char *const[3]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "getone", 0};
^~~~~~~~~
multidict/_multidict.c:503:54: warning: incompatible pointer types initializing 'const char *const *' with an expression of type 'char[7]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "getone", 0};
^~~~~~~~
multidict/_multidict.c:538:37: error: incompatible pointer to integer conversion initializing 'int' with an expression of type 'void *' [-Wint-conversion]
static _PyArg_Parser _parser = {NULL, _keywords, "get", 0};
^~~~
/Library/Developer/CommandLineTools/usr/lib/clang/15.0.0/include/stddef.h:89:16: note: expanded from macro 'NULL'
# define NULL ((void*)0)
^~~~~~~~~~
multidict/_multidict.c:538:43: warning: incompatible pointer types initializing 'const char *' with an expression of type 'const char *const[3]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "get", 0};
^~~~~~~~~
multidict/_multidict.c:538:54: warning: incompatible pointer types initializing 'const char *const *' with an expression of type 'char[4]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "get", 0};
^~~~~
multidict/_multidict.c:712:5: warning: 'UsingDeprecatedTrashcanMacro' is deprecated [-Wdeprecated-declarations]
Py_TRASHCAN_SAFE_BEGIN(self);
^
/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/object.h:551:9: note: expanded from macro 'Py_TRASHCAN_SAFE_BEGIN'
UsingDeprecatedTrashcanMacro cond=1; \
^
/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/object.h:548:1: note: 'UsingDeprecatedTrashcanMacro' has been explicitly marked deprecated here
Py_DEPRECATED(3.11) typedef int UsingDeprecatedTrashcanMacro;
^
/opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:317:54: note: expanded from macro 'Py_DEPRECATED'
#define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
^
multidict/_multidict.c:780:37: error: incompatible pointer to integer conversion initializing 'int' with an expression of type 'void *' [-Wint-conversion]
static _PyArg_Parser _parser = {NULL, _keywords, "add", 0};
^~~~
/Library/Developer/CommandLineTools/usr/lib/clang/15.0.0/include/stddef.h:89:16: note: expanded from macro 'NULL'
# define NULL ((void*)0)
^~~~~~~~~~
multidict/_multidict.c:780:43: warning: incompatible pointer types initializing 'const char *' with an expression of type 'const char *const[3]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "add", 0};
^~~~~~~~~
multidict/_multidict.c:780:54: warning: incompatible pointer types initializing 'const char *const *' with an expression of type 'char[4]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "add", 0};
^~~~~
multidict/_multidict.c:839:37: error: incompatible pointer to integer conversion initializing 'int' with an expression of type 'void *' [-Wint-conversion]
static _PyArg_Parser _parser = {NULL, _keywords, "setdefault", 0};
^~~~
/Library/Developer/CommandLineTools/usr/lib/clang/15.0.0/include/stddef.h:89:16: note: expanded from macro 'NULL'
# define NULL ((void*)0)
^~~~~~~~~~
multidict/_multidict.c:839:43: warning: incompatible pointer types initializing 'const char *' with an expression of type 'const char *const[3]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "setdefault", 0};
^~~~~~~~~
multidict/_multidict.c:839:54: warning: incompatible pointer types initializing 'const char *const *' with an expression of type 'char[11]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "setdefault", 0};
^~~~~~~~~~~~
multidict/_multidict.c:875:37: error: incompatible pointer to integer conversion initializing 'int' with an expression of type 'void *' [-Wint-conversion]
static _PyArg_Parser _parser = {NULL, _keywords, "popone", 0};
^~~~
/Library/Developer/CommandLineTools/usr/lib/clang/15.0.0/include/stddef.h:89:16: note: expanded from macro 'NULL'
# define NULL ((void*)0)
^~~~~~~~~~
multidict/_multidict.c:875:43: warning: incompatible pointer types initializing 'const char *' with an expression of type 'const char *const[3]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "popone", 0};
^~~~~~~~~
multidict/_multidict.c:875:54: warning: incompatible pointer types initializing 'const char *const *' with an expression of type 'char[7]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "popone", 0};
^~~~~~~~
multidict/_multidict.c:922:37: error: incompatible pointer to integer conversion initializing 'int' with an expression of type 'void *' [-Wint-conversion]
static _PyArg_Parser _parser = {NULL, _keywords, "pop", 0};
^~~~
/Library/Developer/CommandLineTools/usr/lib/clang/15.0.0/include/stddef.h:89:16: note: expanded from macro 'NULL'
# define NULL ((void*)0)
^~~~~~~~~~
multidict/_multidict.c:922:43: warning: incompatible pointer types initializing 'const char *' with an expression of type 'const char *const[3]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "pop", 0};
^~~~~~~~~
multidict/_multidict.c:922:54: warning: incompatible pointer types initializing 'const char *const *' with an expression of type 'char[4]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "pop", 0};
^~~~~
multidict/_multidict.c:970:37: error: incompatible pointer to integer conversion initializing 'int' with an expression of type 'void *' [-Wint-conversion]
static _PyArg_Parser _parser = {NULL, _keywords, "popall", 0};
^~~~
/Library/Developer/CommandLineTools/usr/lib/clang/15.0.0/include/stddef.h:89:16: note: expanded from macro 'NULL'
# define NULL ((void*)0)
^~~~~~~~~~
multidict/_multidict.c:970:43: warning: incompatible pointer types initializing 'const char *' with an expression of type 'const char *const[3]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "popall", 0};
^~~~~~~~~
multidict/_multidict.c:970:54: warning: incompatible pointer types initializing 'const char *const *' with an expression of type 'char[7]' [-Wincompatible-pointer-types]
static _PyArg_Parser _parser = {NULL, _keywords, "popall", 0};
^~~~~~~~
multidict/_multidict.c:1684:18: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
PyInit__multidict()
^
void
20 warnings and 8 errors generated.
error: command '/usr/bin/clang' 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 multidict
Building wheel for watchdog (pyproject.toml) ... done
Created wheel for watchdog: filename=watchdog-3.0.0-cp312-cp312-macosx_13_0_arm64.whl size=91548 sha256=138b3aaa363bb2c562415d40b318c8f33e81a54228fef67047eb1df2b80363ad
Stored in directory: /Users/jmatthews/Library/Caches/pip/wheels/34/85/49/7c56ff9848243b6d10a9a64c69c6eaa828d3c4eb5a19c1c042
Building wheel for yarl (pyproject.toml) ... done
Created wheel for yarl: filename=yarl-1.9.2-cp312-cp312-macosx_13_0_arm64.whl size=61914 sha256=3b243da2cc0fbd90ef0c9ee222ff582a06ea28c32e7680ca1eed430be9ed1650
Stored in directory: /Users/jmatthews/Library/Caches/pip/wheels/84/e3/6a/7d0fa1abee8e4aa39922b5bd54689b4b5e4269b2821f482a32
Successfully built frozenlist watchdog yarl
Failed to build multidict
ERROR: Could not build wheels for multidict, which is required to install pyproject.toml-based projects
I'm hitting the below on MacOS arm64
Full output: https://gist.github.com/jwmatthews/c52c044f7417b4009afed7d9bdda5e59#file-gistfile1-txt-L504
The text was updated successfully, but these errors were encountered: