pyca / pynacl

Python binding to the Networking and Cryptography (NaCl) library
https://pynacl.readthedocs.io/
Apache License 2.0
1.06k stars 233 forks source link

In linux/aarch64/PY3.8.12, 'make' is missing, cannot be install #723

Closed wuhuanyan closed 2 years ago

wuhuanyan commented 2 years ago
Building wheel for pynacl (pyproject.toml) ... error
  ERROR: Command errored out with exit status 1:
   command: /opt/conda/envs/rosefinch/bin/python3.8 /opt/conda/envs/rosefinch/lib/python3.8/site-packages/pip/_vendor/pep517/in_process/_in_process.py build_wheel /tmp/tmph3o4v4ki
       cwd: /tmp/pip-install-djbgoern/pynacl_0a8ad3235f2e415ca1137a3a423dfc60
  Complete output (77 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-aarch64-3.8
  creating build/lib.linux-aarch64-3.8/nacl
  copying src/nacl/hash.py -> build/lib.linux-aarch64-3.8/nacl
  copying src/nacl/exceptions.py -> build/lib.linux-aarch64-3.8/nacl
  copying src/nacl/public.py -> build/lib.linux-aarch64-3.8/nacl
  copying src/nacl/__init__.py -> build/lib.linux-aarch64-3.8/nacl
  copying src/nacl/utils.py -> build/lib.linux-aarch64-3.8/nacl
  copying src/nacl/hashlib.py -> build/lib.linux-aarch64-3.8/nacl
  copying src/nacl/secret.py -> build/lib.linux-aarch64-3.8/nacl
  copying src/nacl/signing.py -> build/lib.linux-aarch64-3.8/nacl
  copying src/nacl/encoding.py -> build/lib.linux-aarch64-3.8/nacl
  creating build/lib.linux-aarch64-3.8/nacl/pwhash
  copying src/nacl/pwhash/argon2id.py -> build/lib.linux-aarch64-3.8/nacl/pwhash
  copying src/nacl/pwhash/scrypt.py -> build/lib.linux-aarch64-3.8/nacl/pwhash
  copying src/nacl/pwhash/_argon2.py -> build/lib.linux-aarch64-3.8/nacl/pwhash
  copying src/nacl/pwhash/__init__.py -> build/lib.linux-aarch64-3.8/nacl/pwhash
  copying src/nacl/pwhash/argon2i.py -> build/lib.linux-aarch64-3.8/nacl/pwhash
  creating build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/crypto_generichash.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/crypto_box.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/crypto_secretstream.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/sodium_core.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/crypto_sign.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/crypto_kx.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/__init__.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/randombytes.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/crypto_shorthash.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/utils.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/crypto_scalarmult.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/crypto_core.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/crypto_secretbox.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/crypto_pwhash.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/crypto_aead.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  copying src/nacl/bindings/crypto_hash.py -> build/lib.linux-aarch64-3.8/nacl/bindings
  running build_clib
  Traceback (most recent call last):
    File "/opt/conda/envs/rosefinch/lib/python3.8/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 363, in <module>
      main()
    File "/opt/conda/envs/rosefinch/lib/python3.8/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 345, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "/opt/conda/envs/rosefinch/lib/python3.8/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 261, in build_wheel
      return _build_backend().build_wheel(wheel_directory, config_settings,
    File "/tmp/pip-build-env-1et_smgi/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 230, in build_wheel
      return self._build_with_temp_dir(['bdist_wheel'], '.whl',
    File "/tmp/pip-build-env-1et_smgi/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 215, in _build_with_temp_dir
      self.run_setup()
    File "/tmp/pip-build-env-1et_smgi/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 158, in run_setup
      exec(compile(code, __file__, 'exec'), locals())
    File "setup.py", line 216, in <module>
      setup(
    File "/tmp/pip-build-env-1et_smgi/overlay/lib/python3.8/site-packages/setuptools/__init__.py", line 153, in setup
      return distutils.core.setup(**attrs)
    File "/opt/conda/envs/rosefinch/lib/python3.8/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/opt/conda/envs/rosefinch/lib/python3.8/distutils/dist.py", line 966, in run_commands
      self.run_command(cmd)
    File "/opt/conda/envs/rosefinch/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/tmp/pip-build-env-1et_smgi/overlay/lib/python3.8/site-packages/wheel/bdist_wheel.py", line 299, in run
      self.run_command('build')
    File "/opt/conda/envs/rosefinch/lib/python3.8/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/opt/conda/envs/rosefinch/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/opt/conda/envs/rosefinch/lib/python3.8/distutils/command/build.py", line 135, in run
      self.run_command(cmd_name)
    File "/opt/conda/envs/rosefinch/lib/python3.8/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/opt/conda/envs/rosefinch/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "setup.py", line 161, in run
      raise Exception("ERROR: The 'make' utility is missing from PATH")
  Exception: ERROR: The 'make' utility is missing from PATH
  ----------------------------------------
  ERROR: Failed building wheel for pynacl
Failed to build pynacl
ERROR: Could not build wheels for pynacl, which is required to install pyproject.toml-based projects

How do I install on this aarch64 platform?

reaperhulk commented 2 years ago

The error appears to show you’re missing the make tool in your path. Building pynacl requires a C compiler, make, and the Python development headers.