是否在Debian Squeeze中默认安装了Boost头库?

时间:2012-10-08 18:29:44

标签: boost debian

我最近在我的机器上安装了Debian Squeeze,其中C ++编程实践作为主要目标之一。我在我的项目中定期使用Boost库。在OS-X和Windows上,我必须在使用之前手动安装Boost头库。但是,关于Linux,Boost网站的首页mentions

  

流行的Linux和Unix发行版,如Fedora,Debian和NetBSD,都包含预构建的Boost包。

我主要使用头库,而不是我当前项目的预构建包。所以我的问题是:默认情况下是否在Debian上安装了头文件库,还是我必须安装它们?我已经查看了/ usr / include,它似乎没有任何Boost目录。我搜索了以及查询有关SO的相关讨论,但没有得到我的问题的明确答案。如果我必须安装标题库,是否有“apt-get”方法,或者我只是解压并放在方便的位置(/ usr / local / include)?

其次,如果我需要手动放置boost标头(比如在/ usr / local / include /),那么标头的版本是否应与预安装的软件包匹配,以便与任何可能同时使用这两个软件包的未来项目兼容binaties(libboost- *)和头文件?

我在Linux平台上编程相当新。虽然,我可以使用补丁和匹配(和谷歌搜索)使事情工作,我正在寻找长期最佳实践的指导。

感谢。

1 个答案:

答案 0 :(得分:2)

说GNU / Linux发行版“包含”Boost这样的软件包并不意味着它是自动安装的,它意味着软件包可用进行安装,使用系统的软件包管理工具。该软件包可能是为您的分发量身定制的,因此它可以与操作系统的其余部分很好地集成,或者它可能与上游版本完全相同,其好处就在于它已经为您构建并且便于在操作系统内安装。

有关Debian软件包mgt工具的大量文档:

http://wiki.debian.org/PackageManagement

http://www.debian.org/doc/manuals/debian-faq/ch-pkgtools.en.html

http://www.debian.org/doc/manuals/debian-reference/ch02.en.html

所以,是的,您希望apt-get(或与Debian的其他工具等效)在/usr/include中安装Boost,这比手动安装它们要容易得多。如果您以后决定手动安装Boost,请将该安装与系统软件包完全分开,因此较新版本的库和标头不会与系统软件包冲突。如果它是单用户计算机并且您不需要该计算机上的其他用户可以使用这些程序包,那么您可以将它们安装在主目录中,而不是/usr/local/(这需要超级用户访问权限,而您应该尽可能少地以root用户身份执行)