我想将所需的所有库预先安装到系统上,以便构建某些东西的人总是可以使用这些库。
就像在用户不是 root 的计算机实验室中一样。
我想执行类似 apt-get install lib* 的操作,但我认为这不是一个好主意。有没有类似 most-libs-used 的软件包?
答案1
运行这个:
apt-cache search dev|grep "\-dev"|cut -d' ' -f1|sort > available-devs.txt
它将创建文件 available-devs.txt,其中包含存档中所有可用的 -dev 包的列表(以及您添加的任何 PPA 或其他存档中)。然后您可以去安装它们。您不能同时安装它们,因为 POSIX 系统中的包名称比允许的程序参数多,所以您必须一点一点地安装一些。另外,如果您真的想安装所有这些,我希望您有一个非常大的存储系统用于主操作系统分区。
另外,我认为这只会抓取您当前所用 arch 的版本。要在 64 位 Ubuntu 安装中安装 i386 和 x86_64 版本,您需要更多空间,并且必须安装更多相同的版本,并附加到:i386
包名称中。但档案库中并非所有库都已设置为支持 MultiArch。
答案2
在默认启用多架构支持的 Ubuntu 版本(11.10 及更高版本)中,元包ia32-libs-multarch
包含许多常用的库包作为依赖项。当然,ia32-libs-multarch
仅存在于 64 位系统上,并且提供 32 位库。安装它可能不会实现您想要的效果。
但您可以使用它的依赖项列表(这是 12.04 的版本,这是 11.10)作为你可能想要安装的库的参考支持用户运行 Ubuntu 软件包未提供的软件。(如果软件由 Ubuntu 软件包提供,那么您必须能够运行命令来root
正常安装它,然后依赖项将根据需要安装。)
在 Ubuntu 12.04 上,您可以手动安装这些软件包(即适合系统实际架构的版本):
sudo apt-get install install bluez-alsa gstreamer0.10-fluendo-mp3 gstreamer0.10-plugins-base gstreamer0.10-plugins-good gtk2-engines gtk2-engines-murrine gtk2-engines-oxygen gtk2-engines-pixbuf gvfs ibus-gtk libacl1 libaio1 libao4 libasound2 libasound2-plugins libasyncns0 libattr1 libaudio2 libcanberra-gtk-module libcap2 libcapi20-3 libcups2 libcupsimage2 libcurl3 libdbus-glib-1-2 libesd0 libfontconfig1 libfreetype6 libgail-common libgconf-2-4 libgdbm3 libgettextpo0 libglapi-mesa libglu1-mesa libgphoto2-2 libgphoto2-port0 libgtk2.0-0 libmpg123-0 libncursesw5 libnspr4 libnss3 libodbc1 libopenal1 libpulse-mainloop-glib0 libpulsedsp libqt4-dbus libqt4-network libqt4-opengl libqt4-qt3support libqt4-script libqt4-scripttools libqt4-sql libqt4-svg libqt4-test libqt4-xml libqt4-xmlpatterns libqtcore4 libqtgui4 libqtwebkit4 librsvg2-common libsane libsdl-image1.2 libsdl-mixer1.2 libsdl-net1.2 libsdl-ttf2.0-0 libsdl1.2debian libsqlite3-0 libssl0.9.8 libssl1.0.0 libstdc++5 libstdc++6 libxaw7 libxml2 libxp6 libxslt1.1 libxss1 libxtst6 odbcinst1debian2 xaw3dg libgl1-mesa-dri libgl1-mesa-glx libnss-ldap libpam-ldap libpam-winbind
你也可以在以前的版本上执行此操作,但你必须更改软件包名称中的某些版本号(如果你尝试按原样运行命令,哪些版本需要更改就会变得明显,你可以在此处查找具有类似名称的包对于 Ubuntu 11.10,你可以安装软件包此处命名为依赖项。(虽然查看运行上述命令的错误消息可能会更容易,只需替换来自该列表。
答案3
你可以看看apt-get build-dep
。基本上,它为你提供了某个包的所有构建依赖项。
因此,apt-get build-dep chromium-browser
将安装构建 Chromium 所需的所有库。
答案4
我编写了一个脚本来实现这个功能!你可以在这里获取它:http://littlesvr.ca/grumble/2012/12/12/install-all-the-dev-and-doc-packages-in-debianubuntumint/
如果它(或类似的东西)默认包含在发行版中,那就太棒了。