《 Python树莓派编程》—— 2.5 包管理器


2.5 包管理器

当你需要在Windows中安装一个程序时,通常你需要下载一个.exe或.msi文件,双击这个文件并按照指示进行安装。类似地,如果你用的是Mac,下载一个.dmg文件,将解压后的文件拷入你的硬盘,或者运行安装包文件,都可以完成安装操作。

在Linux中稍有些不同。Linux使用安装包系统,或者说包管理器(package manager)对软件进行跟踪。操作系统使用包管理器进行下载、安装、升级、配置及删除程序。大多数包管理器都有一个包含安装软件的内部数据库,数据库内也含有一些软件之间的依赖和冲突关系。根据发行版本不同,每种Linux的包管理器也不同。Debian(包括树莓派)使用aptitude,Fedora用的是RPM包管理器,Puppy Linux用的是PETget。如果你玩过一些下载的游戏,可能对Steam游戏比较熟悉,这时你会发现Steam的接口也是包管理器的一种形式。大多数包管理器既有命令行模式,也有图形界面。例如Ubuntu使用Synaptic作为aptitude包管理器的前端。

树莓派和Ubuntu类似,也使用aptitude包管理器,而且你可以在终端内完成绝大多数工作。安装一个软件最基本的命令是:

 

这条命令会让包管理器进行如下操作:

1. 确定哪个软件资源(或称为软件库)拥有被申请的这个文件。

2. 查询软件库并确定该软件的依赖关系。

3. 下载并安装那些被依赖的文件。

4. 下载并安装被申请的软件。

这个过程看起来很容易,是的—它就应该这么容易。有时你可能在申请安装一些软件时会遇到问题,因为你安装的软件库不包含你申请的软件,但这个问题也很好解决。如果发生了这样的错误,你只需在终端内输入:

 

之后输入:

 

这样你的包管理器就会知道新的软件库了,再次输入:

 

即可。幸运的是,Raspbian的默认软件库包含了大多数你可能会用到的软件,因此(同样对于本书而言)你可能不会遇到刚刚提及的问题。

时间: 2024-10-22 11:44:08

《 Python树莓派编程》—— 2.5 包管理器的相关文章

《 Python树莓派编程》——导读

Preface 前 言 在2006年,当Eben Upton和其他树莓派基金会的创办人看到大学计算机专业学生的编程状况时,他们感到无比沮丧.在美国,计算机专业的编程课程被缩减为"CS 101:如何使用Word程序"和"CS 203:优化你的Facebook主页".他们意识到,不是所有人在上大学之前都学过编程.因此,他们酝酿了一个计划--打造一种小型廉价的计算机,使孩子们可以更加方便地学习编程,就如同昔日的Amiga.Spectrum和Commodore 64.随后,

Node.js安装教程和NPM包管理器使用详解_node.js

2009年的JSCOnf大会上,一个叫Ryan Dahl的年轻程序员向人们展示了一个他正在做的项目,一个基于Google V8引擎的JavaScript运行平台,它提供了一套事件循环和低IO的应用程序编程接口(API).和其他的服务端平台不同, JavaScript天生就是事件驱动IO,而这个项目又大大降低了编写事件驱动应用程序的复杂度,因此它很快就以不可思议的速度的成长流行起来,并应用到实际项目中.(Jack:这段翻译的不太靠谱,原文:This project was not like oth

Paludis 0.64.2发布 包管理器工具

Paludis 0.64.2该版本绑定Python,现在包括各种附加的东西.CONFIG_PROTECT现已合并到merge-check.可使用Portage的格式配置,userpriv功能现已推出. Paludis是一款采用类似Gentoo的ebuild系统的包管理器工具,Gentoo用户无须担心Paludis与Portage的冲突,因为两者是互相独立的.其他Linux发行版用户也可以采用这个包管理工具,作为默认工具的补充. 下载地址:http://paludis.pioto.org/down

node.js学习笔记(2) node包管理器--npm

npm(node package manager),是node.js的一个包管理器,用于第三方模块的下载.安装和管理. npm收录着庞大而丰富的第三方资源,截至目前为止已经收录了220102个包.npm之于node.js,其重要程度可比maven与java.pip与python. 一.npm安装 npm的安装非常简单,在linux下只要一条命令即可完成安装,如下: apt-get install npm 安装完后,运行"npm"命令检查一下是否安装成功,出现如下提示说明安装成功: le

Swift 正式开源, 包括 Swift 核心库和包管理器

Swift 正式开源!Swift 团队很高兴宣布 Swift 开始开源新篇章.自从苹果发布 Swfit 编程语言,就成为了历史上发展最快的编程语言之一.Swift 通过设计使得软件编写更加快速更加安全. Swift 的 GitHub 地址:https://github.com/apple/swift Swift 是由多种不同的项目组成的,提供一个构建软件的完整生态系统.Swift 编译器项目解析 Swift 语法,产生语义判断来帮助编写正确代码,利用 LLVM 生成机器指令.LLDB 项目是 f

《Node.js入门经典》一第 2 章 npm(Node包管理器)2.1 npm是什么

使用npm为Node.js安装模块: 为Node.js的应用程序查找模块: 在Node.js应用程序中使用模块: 查找Node.js模块的文档: 使用package.json文件. 2.1 npm是什么 Node.js入门经典npm(Node Package Manager,Node包管理器)是Node.js的包管理器.它允许开发人员在Node.js应用程序中创建.共享并重用模块.它也可用于共享完整的Node.js应用程序.模块就是可以在不同项目中重用的代码库.如果你使用其他语言写过程序,那么n

在linux中使用包管理器安装node.js

 这篇文章主要介绍了在linux中使用包管理器安装node.js的方法以及具体安装过程,非常详细,推荐给大家,有需要的小伙伴参考下吧.     网上文章中,在linux下安装node.js都是使用源码编译,其实node的github上已经提供了各个系统下使用各自的包管理器(package manager)安装node.js的方法. 1. 在Ubuntu中,使用如下命令:   代码如下: curl -sL https://deb.nodesource.com/setup | sudo bash -

JavaScript 包管理器工作原理简介

本文讲的是JavaScript 包管理器工作原理简介, 不久前,Node.js 社区的负责人之一 ashley williams 发了一条这样的推特: lockfiles = awesome for apps, bad for libs this is not a new thought, i'm confused why's everyone mad about this 锁文件 = 棒(对于应用而言),坏(对于库而言),这不是一个新想法,我只是很困惑,为什么所有的人都因为这个很崩溃 - @a

Paludis 0.64.3发布 包管理器工具

Paludis 0.64.3此版本修正了一个错误:一个!在||( )之内可能会导致错误.较小的分类错误的修复和编译器的兼容性变化. Paludis是一款采用类似Gentoo的ebuild系统的包管理器工具,Gentoo用户无须担心Paludis与Portage的冲突,因为两者是互相独立的.其他Linux发行版用户也可以采用这个包管理工具,作为默认工具的补充. 下载地址:http://paludis.pioto.org/download/paludis-0.64.3.tar.bz2