使用apt-get在debian etch上安装python-pyparsing 1.4.2-1.1_all.deb

时间:2014-01-20 18:25:55

标签: python linux ubuntu pyparsing

我正在尝试将python-pyparsing安装到我的debian etch上,但在运行sudo apt-get install python-pyparsing_1.4.2-1.1_all.deb时遇到问题。似乎在这里给我这个错误

Reading package lists... Done
Building dependency tree... Done
W: Couldn't stat source package list http://archive.debian.org etch/main Packages (/var/lib/apt/lists/archive.debian.org_debian_dists_etch_main_binary-i386_Packages) -stat (2 No such file or directory)
W: You may want to run apt-get update to correct these problems
E: Couldn't find package python-pyparsing_1.4.2-1.1_all.deb

我已经运行了apt-get update,但它再次告​​诉我同样的错误然后

E: Some index files failed to download, they have been ignored, or old ones used instead.

更新

我现在apt-get install -f试图安装我的python-pyparsing_1.4.2-1.1_all.deb文件并回读:

Reading package lists... Done
Building dependency tree... Done
E: Couldn't find package python-pyparsing_1.4.2-1.1_all.deb

我不再进行竞选apt-get update了。我需要有一个目录吗?我此时在/ mnt / hgfs /目录中有它。

对于如何为此pyparsing

安装debian,我们非常感谢您提供帮助

3 个答案:

答案 0 :(得分:1)

如果您正在尝试安装Pyparsing用于开发目的(也就是说,您正在编写一个使用Pyparsing的程序,而不是仅仅尝试安装另一个以Pyparsing作为依赖项的deb),那么您不应该使用发行包经理。

相反,创建一个virtualenv(http://www.virtualenv.org/en/latest/)来开发您的应用程序,并使用提供的distribute依赖关系管理系统。

Virtualenvs是自包含的Python环境,无法访问您在系统范围内安装的任何Python模块(如果需要,甚至可以使用与您的系统不同的Python版本)。相反,他们下载并安装(本身)你想在其中运行的程序/库的所有依赖项。

该方法的优点如下:

  • 您不仅限于发行版程序包管理器中存在的库和版本(通常过时 - 例如,Pyparsing目前版本为2.0.1,与Debian的1.4.2不同)。
  • 您可以确保 程序/ lib的依赖关系在其setup.py中正确记录,而不是纯粹运气,因为您在系统范围内安装了一些您忘记的内容6个月前。
  • 此外,这些将通过一行python setup.py install自动下载和安装,这极大地简化了程序的安装和部署。
  • 是的,您也应在生产环境中使用virtualenv。为什么?因为如果您在同一环境中运行具有不同集合(和版本)依赖项的不同程​​序(即计算机的实际Python安装),则安装新版本的lib,因为程序A需要它可能会破坏程序B依赖旧版本。
  • 您的程序/ lib的依赖关系管理可以在任何操作系统或发行版(甚至Windows)中运行,而无需任何额外的努力。
  • 很容易卸载你尝试过的那些糟糕的库并且决定对你的项目不利:如果pip uninstall xxxx不起作用,只需删除virtualenv并重新创建它 - - 毕竟,只有一条线可以让你所有人回来。

答案 1 :(得分:0)

只需打开Ubuntu软件中心,重新安装ubuntu-extras-keyring,然后从终端运行sudo apt-get update

答案 2 :(得分:0)

的名称是python-pyparsing。您正在使用程序包文件名,该名称由程序包名称,版本和体系结构组成,并具有.deb扩展名以进行引导。

正确的命令行是

sudo apt-get install python-pyparsing

包工具链负责为您的体系结构找到合适的版本,并从合适的存储库下载它。 (apt-cache policy python-pyparsing会告诉您哪些版本可用。)

如果您需要此特定版本,请使用

sudo apt-get install python-pyparsing=1.4.2-1.1

如果您可以从已配置的某个Apt来源获得它。

(如果您有一个已下载的deb文件,则可以使用dpkg进行安装:

sudo dpkg -i path/to/python-pyparsing_1.4.2-1.1_all.deb

但通常不需要这样做。 dpkg不会下载丢失的依赖项,也不会做任何您没有特别要求的内容。)