【问题标题】:Installing trepan debugger for Python 3 on Ubuntu 14.04在 Ubuntu 14.04 上为 Python 3 安装 Trepan 调试器
【发布时间】:2014-12-10 07:02:32
【问题描述】:

我正在使用带有 Python 版本 2.7.6 的 Ubuntu 14.04。我最近使用pyenv 将 Python 版本 3.4.2 与系统 Python 并排安装。现在我想测试一些 Python 3 的调试器,我从python3-trepan project page 下载了trepan-0.2.8-py3.3.egg

然后我运行pyenv global 3.4.2easy_install trepan-0.2.8-py3.3.egg,这给了我以下错误:

Traceback (most recent call last):
  File "/home/hakon/.pyenv/versions/3.4.2/bin/easy_install", line 11, in <module>
    sys.exit(main())
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/command/easy_install.py", line 1909, in main
    with_ei_usage(lambda:
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/command/easy_install.py", line 1896, in with_ei_usage
    return f()
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/command/easy_install.py", line 1913, in <lambda>
    distclass=DistributionWithoutHelpCommands, **kw
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/distutils/dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/command/easy_install.py", line 358, in run
    self.easy_install(spec, not self.no_deps)
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/command/easy_install.py", line 574, in easy_install
    return self.install_item(None, spec, tmpdir, deps, True)
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/command/easy_install.py", line 625, in install_item
    self.process_distribution(spec, dist, deps)
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/command/easy_install.py", line 671, in process_distribution
    [requirement], self.local_index, self.easy_install
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/pkg_resources.py", line 564, in resolve
    dist = best[req.key] = env.best_match(req, self, installer)
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/pkg_resources.py", line 802, in best_match
    return self.obtain(req, installer) # try and download/install
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/pkg_resources.py", line 814, in obtain
    return installer(requirement)
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/command/easy_install.py", line 593, in easy_install
    return self.install_item(spec, dist.location, tmpdir, deps)
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/command/easy_install.py", line 623, in install_item
    dists = self.install_eggs(spec, download, tmpdir)
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/command/easy_install.py", line 809, in install_eggs
    return self.build_and_install(setup_script, setup_base)
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/command/easy_install.py", line 1015, in build_and_install
    self.run_setup(setup_script, setup_base, args)
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/command/easy_install.py", line 1000, in run_setup
    run_setup(setup_script, args)
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/sandbox.py", line 50, in run_setup
    lambda: execfile(
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/sandbox.py", line 100, in run
    return func()
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/sandbox.py", line 52, in <lambda>
    {'__file__':setup_script, '__name__':'__main__'}
  File "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/setuptools/compat.py", line 78, in execfile
    exec(compile(source, fn, 'exec'), globs, locs)
  File "setup.py", line 12, in <module>
ImportError: No module named '__pkginfo__'

更新:

问题似乎与使用pyenv 安装 Python 3 无关:我尝试了以下方法:

  • 已禁用pyenv
  • sudo apt-get install python3 python
  • sudo apt-get install python3-setuptools
  • sudo easy_install-3.4 trepan-0.2.8-py3.3.egg

这给了我同样的错误:

Traceback (most recent call last):
  File "/usr/bin/easy_install-3.4", line 9, in <module>
    load_entry_point('setuptools==3.3', 'console_scripts', 'easy_install-3.4')()
  File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 1963, in main
    with_ei_usage(lambda:
  File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 1950, in with_ei_usage
    return f()
  File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 1967, in <lambda>
    distclass=DistributionWithoutHelpCommands, **kw
  File "/usr/lib/python3.4/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/usr/lib/python3.4/distutils/dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python3.4/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 381, in run
    self.easy_install(spec, not self.no_deps)
  File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 597, in easy_install
    return self.install_item(None, spec, tmpdir, deps, True)
  File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 648, in install_item
    self.process_distribution(spec, dist, deps)
  File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 694, in process_distribution
    [requirement], self.local_index, self.easy_install
  File "/usr/lib/python3/dist-packages/pkg_resources.py", line 620, in resolve
    dist = best[req.key] = env.best_match(req, ws, installer)
  File "/usr/lib/python3/dist-packages/pkg_resources.py", line 858, in best_match
    return self.obtain(req, installer) # try and download/install
  File "/usr/lib/python3/dist-packages/pkg_resources.py", line 870, in obtain
    return installer(requirement)
  File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 616, in easy_install
    return self.install_item(spec, dist.location, tmpdir, deps)
  File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 646, in install_item
    dists = self.install_eggs(spec, download, tmpdir)
  File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 834, in install_eggs
    return self.build_and_install(setup_script, setup_base)
  File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 1040, in build_and_install
    self.run_setup(setup_script, setup_base, args)
  File "/usr/lib/python3/dist-packages/setuptools/command/easy_install.py", line 1025, in run_setup
    run_setup(setup_script, args)
  File "/usr/lib/python3/dist-packages/setuptools/sandbox.py", line 50, in run_setup
    lambda: execfile(
  File "/usr/lib/python3/dist-packages/setuptools/sandbox.py", line 100, in run
    return func()
  File "/usr/lib/python3/dist-packages/setuptools/sandbox.py", line 52, in <lambda>
    {'__file__':setup_script, '__name__':'__main__'}
  File "/usr/lib/python3/dist-packages/setuptools/compat.py", line 78, in execfile
    exec(compile(source, fn, 'exec'), globs, locs)
  File "setup.py", line 12, in <module>
ImportError: No module named '__pkginfo__'

【问题讨论】:

    标签: python ubuntu python-3.x trepan


    【解决方案1】:

    【讨论】:

    • 谢谢,也许我不应该使用pyenv install 3.4.2 安装Python 3 而是使用sudo apt-get install python3
    • 我认为我之前的评论并非如此。请参阅更新问题中的讨论。
    【解决方案2】:

    我还没有测试过,但是维护者@rocky 推荐这个安装:

    pip3 install trepan3k
    

    使用此命令安装:

    pip3 install -e git+https://github.com/rocky/python3-trepan/#egg=trepan
    

    我认为当前的 tarball/eggs 已损坏

    【讨论】:

    • 由于 pip 和 python3 的问题,我还添加了 trepan3k 作为它自己的 pip。所以pip install trepan3k 现在也应该可以工作了。
    【解决方案3】:

    从 Trepan 0.4.2 开始(在撰写本文时,我们处于 0.4.7),pip 问题得到了解决。不过……

    您正在使用 pyenv,但请注意,在没有它的 Ubuntu 14.04 上,您可能需要使用 pip3 而不是 pip。在 pyenv 之外,我认为默认 pip 为 Python2 的 pip。另见this link

    唉,还有一个奇怪的地方。当轮子不可用时(如版本 0.4.7 之前的情况),pip 使用源 tarball 来安装而不是鸡蛋。然而,Python 2 和 Python 3 的源代码必然是不同的,尝试将它们组合成一个源代码太困难了。

    所以,我已经开始将车轮格式文件放在 pypi.org 上,我希望这也能解决未来类似的问题。

    【讨论】:

      猜你喜欢
      • 2014-10-05
      • 2016-08-13
      • 1970-01-01
      • 1970-01-01
      • 2016-02-16
      • 2019-03-28
      • 2016-04-03
      相关资源
      最近更新 更多