安装脚本退出时出现错误:命令'x86_64-linux-gnu-gcc'在退出状态1时失败,同时安装PyNaCl

时间:2016-11-05 20:57:26

标签: python linux ubuntu

我正在尝试在Ubuntu 16.04上安装PyNaCl,我收到了标题上的错误;这是整个追溯:

Collecting PyNaCl
  Using cached PyNaCl-1.0.1.tar.gz
    Complete output from command python setup.py egg_info:
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'libffi' found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'libffi' found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'libffi' found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'libffi' found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'libffi' found
    warning: build_py: byte-compiling is disabled, skipping.

    c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
    compilation terminated.
    Traceback (most recent call last):
      File "/usr/lib/python3.5/distutils/unixccompiler.py", line 118, in _compile
        extra_postargs)
      File "/usr/lib/python3.5/distutils/ccompiler.py", line 909, in spawn
        spawn(cmd, dry_run=self.dry_run)
      File "/usr/lib/python3.5/distutils/spawn.py", line 36, in spawn
        _spawn_posix(cmd, search_path, dry_run=dry_run)
      File "/usr/lib/python3.5/distutils/spawn.py", line 159, in _spawn_posix
        % (cmd, exit_status))
    distutils.errors.DistutilsExecError: command 'x86_64-linux-gnu-gcc' failed with exit status 1

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "/usr/lib/python3.5/distutils/core.py", line 148, in setup
        dist.run_commands()
      File "/usr/lib/python3.5/distutils/dist.py", line 955, in run_commands
        self.run_command(cmd)
      File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/command/bdist_egg.py", line 161, in run
        cmd = self.call_command('install_lib', warn_dir=0)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/command/bdist_egg.py", line 147, in call_command
        self.run_command(cmdname)
      File "/usr/lib/python3.5/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/command/install_lib.py", line 11, in run
        self.build()
      File "/usr/lib/python3.5/distutils/command/install_lib.py", line 109, in build
        self.run_command('build_ext')
      File "/usr/lib/python3.5/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/command/build_ext.py", line 75, in run
        _build_ext.run(self)
      File "/usr/lib/python3.5/distutils/command/build_ext.py", line 338, in run
        self.build_extensions()
      File "/usr/lib/python3.5/distutils/command/build_ext.py", line 447, in build_extensions
        self._build_extensions_serial()
      File "/usr/lib/python3.5/distutils/command/build_ext.py", line 472, in _build_extensions_serial
        self.build_extension(ext)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/command/build_ext.py", line 196, in build_extension
        _build_ext.build_extension(self, ext)
      File "/usr/lib/python3.5/distutils/command/build_ext.py", line 532, in build_extension
        depends=ext.depends)
      File "/usr/lib/python3.5/distutils/ccompiler.py", line 574, in compile
        self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
      File "/usr/lib/python3.5/distutils/unixccompiler.py", line 120, in _compile
        raise CompileError(msg)
    distutils.errors.CompileError: command 'x86_64-linux-gnu-gcc' failed with exit status 1

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 157, in save_modules
        yield saved
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 198, in setup_context
        yield
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 248, in run_setup
        DirectorySandbox(setup_dir).run(runner)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 278, in run
        return func()
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 246, in runner
        _execfile(setup_script, ns)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 47, in _execfile
        exec(code, globals, locals)
      File "/tmp/easy_install-ek_ikn33/cffi-1.8.3/setup.py", line 193, in <module>
        subprocess.check_call(["make", "check"], cwd=build_temp)
      File "/usr/lib/python3.5/distutils/core.py", line 163, in setup
        raise SystemExit("error: " + str(msg))
    SystemExit: error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1101, in run_setup
        run_setup(setup_script, args)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 251, in run_setup
        raise
      File "/usr/lib/python3.5/contextlib.py", line 77, in __exit__
        self.gen.throw(type, value, traceback)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 198, in setup_context
        yield
      File "/usr/lib/python3.5/contextlib.py", line 77, in __exit__
        self.gen.throw(type, value, traceback)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 169, in save_modules
        saved_exc.resume()
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 144, in resume
        six.reraise(type, exc, self._tb)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/pkg_resources/_vendor/six.py", line 685, in reraise
        raise value.with_traceback(tb)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 157, in save_modules
        yield saved
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 198, in setup_context
        yield
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 248, in run_setup
        DirectorySandbox(setup_dir).run(runner)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 278, in run
        return func()
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 246, in runner
        _execfile(setup_script, ns)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/sandbox.py", line 47, in _execfile
        exec(code, globals, locals)
      File "/tmp/easy_install-ek_ikn33/cffi-1.8.3/setup.py", line 193, in <module>
        subprocess.check_call(["make", "check"], cwd=build_temp)
      File "/usr/lib/python3.5/distutils/core.py", line 163, in setup
        raise SystemExit("error: " + str(msg))
    SystemExit: error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pycharm-packaging/PyNaCl/setup.py", line 259, in <module>
        "Programming Language :: Python :: 3.5",
      File "/usr/lib/python3.5/distutils/core.py", line 108, in setup
        _setup_distribution = dist = klass(attrs)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/dist.py", line 315, in __init__
        self.fetch_build_eggs(attrs['setup_requires'])
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/dist.py", line 361, in fetch_build_eggs
        replace_conflicting=True,
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 826, in resolve
        dist = best[req.key] = env.best_match(req, ws, installer)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 1092, in best_match
        return self.obtain(req, installer)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 1104, in obtain
        return installer(requirement)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/dist.py", line 429, in fetch_build_egg
        return cmd.easy_install(req)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 665, in easy_install
        return self.install_item(spec, dist.location, tmpdir, deps)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 695, in install_item
        dists = self.install_eggs(spec, download, tmpdir)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 876, in install_eggs
        return self.build_and_install(setup_script, setup_base)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1115, in build_and_install
        self.run_setup(setup_script, setup_base, args)
      File "/home/miguel/PycharmProjects/Crossed/Crossedenv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1103, in run_setup
        raise DistutilsError("Setup script exited with %s" % (v.args[0],))
    distutils.errors.DistutilsError: Setup script exited with error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

    ----------------------------------------

Command "python setup.py egg_info" failed with error code 1 in /tmp/pycharm-packaging/PyNaCl/

我搜索了一些适用于其他人的解决方法,但他们是为了他们的包而且不适合我。谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

看起来你缺少CFFI,它也有几个依赖项。根据{{​​3}},你需要安装一些依赖项,可能是python-dev和libffi-dev。