Hi,

It looks like there's a missing libffi package, which you'll need to
install. What Linux distro/version are you on?

While it won't help right now, we do have a universal installer coming out
soon that takes care of all necessary packages on all supported
distros/versions, so that would help in future installs.

Christian

On Fri, Jan 12, 2024 at 10:39 AM Grover D <grover...@gmail.com> wrote:

> Hello,
>
> I am trying to do a clean new install of review board. I have resolved a
> number of issues already but have not been able to resolve. The output from
> pip is:
>
> # pip3 install ReviewBoard --root-user-action=ignore
> Collecting ReviewBoard
>   Using cached ReviewBoard-6.0.1-py3-none-any.whl.metadata (10 kB)
> Collecting bleach~=6.0.0 (from ReviewBoard)
>   Using cached bleach-6.0.0-py3-none-any.whl (162 kB)
> Collecting cryptography~=41.0.4 (from ReviewBoard)
>   Using cached cryptography-41.0.7.tar.gz (630 kB)
>   Installing build dependencies ... done
>   Getting requirements to build wheel ... done
>   Preparing metadata (pyproject.toml) ... done
> Collecting django-braces==1.13.0 (from ReviewBoard)
>   Using cached django_braces-1.13.0-py2.py3-none-any.whl (15 kB)
> Collecting django-cors-headers~=3.11.0 (from ReviewBoard)
>   Using cached django_cors_headers-3.11.0-py3-none-any.whl (12 kB)
> Collecting django-haystack~=3.2.1 (from ReviewBoard)
>   Using cached django-haystack-3.2.1.tar.gz (466 kB)
>   Installing build dependencies ... done
>   Getting requirements to build wheel ... done
>   Preparing metadata (pyproject.toml) ... done
> Collecting django-multiselectfield~=0.1.12 (from ReviewBoard)
>   Using cached django_multiselectfield-0.1.12-py3-none-any.whl (15 kB)
> Collecting django-evolution~=2.2 (from ReviewBoard)
>   Using cached django_evolution-2.3-py2.py3-none-any.whl.metadata (5.9 kB)
> Collecting django-oauth-toolkit~=1.6.3 (from ReviewBoard)
>   Using cached django_oauth_toolkit-1.6.3-py3-none-any.whl (62 kB)
> Collecting Django~=3.2.22 (from ReviewBoard)
>   Using cached Django-3.2.23-py3-none-any.whl.metadata (4.1 kB)
> Collecting Djblets~=4.0 (from ReviewBoard)
>   Using cached Djblets-4.0-py3-none-any.whl.metadata (11 kB)
> Collecting docutils (from ReviewBoard)
>   Using cached docutils-0.20.1-py3-none-any.whl.metadata (2.8 kB)
> Collecting markdown~=3.3.7 (from ReviewBoard)
>   Using cached Markdown-3.3.7-py3-none-any.whl (97 kB)
> Collecting mimeparse~=0.1.3 (from ReviewBoard)
>   Using cached mimeparse-0.1.3.tar.gz (4.4 kB)
>   Installing build dependencies ... done
>   Getting requirements to build wheel ... done
>   Preparing metadata (pyproject.toml) ... done
> Collecting packaging>=23.1 (from ReviewBoard)
>   Using cached packaging-23.2-py3-none-any.whl.metadata (3.2 kB)
> Collecting paramiko>=1.12 (from ReviewBoard)
>   Using cached paramiko-3.4.0-py3-none-any.whl.metadata (4.4 kB)
> Collecting pydiffx~=1.1 (from ReviewBoard)
>   Using cached pydiffx-1.1-py2.py3-none-any.whl (56 kB)
> Collecting Pygments~=2.14.0 (from ReviewBoard)
>   Using cached Pygments-2.14.0-py3-none-any.whl (1.1 MB)
> Collecting pymdown-extensions~=6.3.0 (from ReviewBoard)
>   Using cached pymdown_extensions-6.3-py2.py3-none-any.whl (198 kB)
> Collecting pymemcache (from ReviewBoard)
>   Using cached pymemcache-4.0.0-py2.py3-none-any.whl (60 kB)
> Collecting pyOpenSSL~=23.2.0 (from ReviewBoard)
>   Using cached pyOpenSSL-23.2.0-py3-none-any.whl.metadata (10 kB)
> Collecting pytz>=2015.2 (from ReviewBoard)
>   Using cached pytz-2023.3.post1-py2.py3-none-any.whl.metadata (22 kB)
> Collecting rbintegrations~=3.1 (from ReviewBoard)
>   Using cached rbintegrations-3.1.1-py3-none-any.whl.metadata (5.7 kB)
> Collecting requests-oauthlib<=1.0,>=0.8 (from ReviewBoard)
>   Using cached requests_oauthlib-1.0.0-py2.py3-none-any.whl (21 kB)
> Collecting Whoosh>=2.6 (from ReviewBoard)
>   Using cached Whoosh-2.7.4-py2.py3-none-any.whl (468 kB)
> Collecting six>=1.9.0 (from bleach~=6.0.0->ReviewBoard)
>   Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
> Collecting webencodings (from bleach~=6.0.0->ReviewBoard)
>   Using cached webencodings-0.5.1-py2.py3-none-any.whl (11 kB)
> Requirement already satisfied: cffi>=1.12 in
> /usr/opt/python3/lib/python3.9/site-packages (from
> cryptography~=41.0.4->ReviewBoard) (1.16.0)
> Collecting asgiref<4,>=3.3.2 (from Django~=3.2.22->ReviewBoard)
>   Using cached asgiref-3.7.2-py3-none-any.whl.metadata (9.2 kB)
> Collecting sqlparse>=0.2.2 (from Django~=3.2.22->ReviewBoard)
>   Using cached sqlparse-0.4.4-py3-none-any.whl (41 kB)
> Collecting requests>=2.13.0 (from django-oauth-toolkit~=1.6.3->ReviewBoard)
>   Using cached requests-2.31.0-py3-none-any.whl.metadata (4.6 kB)
> Collecting oauthlib>=3.1.0 (from django-oauth-toolkit~=1.6.3->ReviewBoard)
>   Using cached oauthlib-3.2.2-py3-none-any.whl (151 kB)
> Collecting jwcrypto>=0.8.0 (from django-oauth-toolkit~=1.6.3->ReviewBoard)
>   Using cached jwcrypto-1.5.1.tar.gz (86 kB)
>   Installing build dependencies ... done
>   Getting requirements to build wheel ... done
>   Preparing metadata (pyproject.toml) ... done
> Collecting django-pipeline~=2.0.9 (from Djblets~=4.0->ReviewBoard)
>   Using cached django_pipeline-2.0.9-py3-none-any.whl (37 kB)
> Collecting dnspython>=2.3.0 (from Djblets~=4.0->ReviewBoard)
>   Using cached dnspython-2.4.2-py3-none-any.whl.metadata (4.9 kB)
> Collecting feedparser>=6.0.9 (from Djblets~=4.0->ReviewBoard)
>   Using cached feedparser-6.0.11-py3-none-any.whl.metadata (2.4 kB)
> Collecting housekeeping~=1.1 (from Djblets~=4.0->ReviewBoard)
>   Using cached housekeeping-1.1-py3-none-any.whl.metadata (8.1 kB)
> Collecting importlib-metadata>=6.6 (from Djblets~=4.0->ReviewBoard)
>   Using cached importlib_metadata-7.0.1-py3-none-any.whl.metadata (4.9 kB)
> Collecting importlib-resources>=5.9 (from Djblets~=4.0->ReviewBoard)
>   Using cached importlib_resources-6.1.1-py3-none-any.whl.metadata (4.1 kB)
> Collecting Pillow>=6.2 (from Djblets~=4.0->ReviewBoard)
>   Using cached pillow-10.2.0.tar.gz (46.2 MB)
>   Installing build dependencies ... done
>   Getting requirements to build wheel ... done
>   Installing backend dependencies ... done
>   Preparing metadata (pyproject.toml) ... done
> Collecting publicsuffix>=1.1 (from Djblets~=4.0->ReviewBoard)
>   Using cached publicsuffix-1.1.1.tar.gz (66 kB)
>   Installing build dependencies ... done
>   Getting requirements to build wheel ... done
>   Preparing metadata (pyproject.toml) ... done
> Collecting python-dateutil>=2.7 (from Djblets~=4.0->ReviewBoard)
>   Using cached python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
> Collecting typing-extensions>=4.4 (from Djblets~=4.0->ReviewBoard)
>   Using cached typing_extensions-4.9.0-py3-none-any.whl.metadata (3.0 kB)
> Collecting bcrypt>=3.2 (from paramiko>=1.12->ReviewBoard)
>   Using cached bcrypt-4.1.2.tar.gz (26 kB)
>   Installing build dependencies ... done
>   Getting requirements to build wheel ... done
>   Preparing metadata (pyproject.toml) ... done
> Collecting pynacl>=1.5 (from paramiko>=1.12->ReviewBoard)
>   Using cached PyNaCl-1.5.0.tar.gz (3.4 MB)
>   Installing build dependencies ... done
>   Getting requirements to build wheel ... done
>   Preparing metadata (pyproject.toml) ... error
>   error: subprocess-exited-with-error
>
>   Preparing metadata (pyproject.toml) did not run successfully.
>   exit code: 1
>
>   [38 lines of output]
>   Traceback (most recent call last):
>     File
> "/usr/opt/python3/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py",
> line 353, in <module>
>       main()
>     File
> "/usr/opt/python3/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py",
> line 335, in main
>       json_out['return_val'] = hook(**hook_input['kwargs'])
>     File
> "/usr/opt/python3/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py",
> line 149, in prepare_metadata_for_build_wheel
>       return hook(metadata_directory, config_settings)
>     File
> "/tmp/pip-build-env-4l5nfv47/overlay/lib/python3.9/site-packages/setuptools/build_meta.py",
> line 366, in prepare_metadata_for_build_wheel
>       self.run_setup()
>     File
> "/tmp/pip-build-env-4l5nfv47/overlay/lib/python3.9/site-packages/setuptools/build_meta.py",
> line 311, in run_setup
>       exec(code, locals())
>     File "<string>", line 202, in <module>
>     File
> "/tmp/pip-build-env-4l5nfv47/overlay/lib/python3.9/site-packages/setuptools/__init__.py",
> line 103, in setup
>       return distutils.core.setup(**attrs)
>     File
> "/tmp/pip-build-env-4l5nfv47/overlay/lib/python3.9/site-packages/setuptools/_distutils/core.py",
> line 147, in setup
>       _setup_distribution = dist = klass(attrs)
>     File
> "/tmp/pip-build-env-4l5nfv47/overlay/lib/python3.9/site-packages/setuptools/dist.py",
> line 303, in __init__
>       _Distribution.__init__(self, dist_attrs)
>     File
> "/tmp/pip-build-env-4l5nfv47/overlay/lib/python3.9/site-packages/setuptools/_distutils/dist.py",
> line 283, in __init__
>       self.finalize_options()
>     File
> "/tmp/pip-build-env-4l5nfv47/overlay/lib/python3.9/site-packages/setuptools/dist.py",
> line 654, in finalize_options
>       ep(self)
>     File
> "/tmp/pip-build-env-4l5nfv47/overlay/lib/python3.9/site-packages/setuptools/dist.py",
> line 674, in _finalize_setup_keywords
>       ep.load()(self, ep.name, value)
>     File
> "/tmp/pip-build-env-4l5nfv47/overlay/lib/python3.9/site-packages/cffi/setuptools_ext.py",
> line 216, in cffi_modules
>       add_cffi_module(dist, cffi_module)
>     File
> "/tmp/pip-build-env-4l5nfv47/overlay/lib/python3.9/site-packages/cffi/setuptools_ext.py",
> line 49, in add_cffi_module
>       execfile(build_file_name, mod_vars)
>     File
> "/tmp/pip-build-env-4l5nfv47/overlay/lib/python3.9/site-packages/cffi/setuptools_ext.py",
> line 25, in execfile
>       exec(code, glob, glob)
>     File "src/bindings/build.py", line 35, in <module>
>       ffi = FFI()
>     File
> "/tmp/pip-build-env-4l5nfv47/overlay/lib/python3.9/site-packages/cffi/api.py",
> line 48, in __init__
>       import _cffi_backend as backend
>   ImportError:    0509-022 Cannot load module
> /tmp/pip-build-env-4l5nfv47/overlay/lib/python3.9/site-packages/_
> cffi_backend.cpython-39.so.
>           0509-150   Dependent module libffi.a(libffi.so.8) could not be
> loaded.
>           0509-022 Cannot load module libffi.a(libffi.so.8).
>           0509-026 System error: A file or directory in the path name does
> not exist.
>   [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.
>
> # python3 --version
> Python 3.9.17
> # pip3 -V
> pip 23.3.2 from /usr/opt/python3/lib/python3.9/site-packages/pip (python
> 3.9)
>
> Does anyone have any ideas?
> Thanks in advance.
>
> --
> Supercharge your Review Board with Power Pack:
> https://www.reviewboard.org/powerpack/
> Want us to host Review Board for you? Check out RBCommons:
> https://rbcommons.com/
> Happy user? Let us know! https://www.reviewboard.org/users/
> ---
> You received this message because you are subscribed to the Google Groups
> "Review Board Community" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to reviewboard+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/reviewboard/bf63f96d-83a4-4a7d-9f38-ac4e54912d3bn%40googlegroups.com
> <https://groups.google.com/d/msgid/reviewboard/bf63f96d-83a4-4a7d-9f38-ac4e54912d3bn%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>


-- 
Christian Hammond
President/CEO of Beanbag <https://www.beanbaginc.com/>
Makers of Review Board <https://www.reviewboard.org/>

-- 
Supercharge your Review Board with Power Pack: 
https://www.reviewboard.org/powerpack/
Want us to host Review Board for you? Check out RBCommons: 
https://rbcommons.com/
Happy user? Let us know! https://www.reviewboard.org/users/
--- 
You received this message because you are subscribed to the Google Groups 
"Review Board Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to reviewboard+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/reviewboard/CAE7Vnd%3DhjNyTuMX7Nhr1jzJ8fNWsh0YvNpjFN%3DowRRcsRiCKEw%40mail.gmail.com.

Reply via email to