如何反转apt-get build-dep <package>的效果?


8

当我跑步时:

apt-get build-dep <package>

特权会安装的构建依赖<package>

现在,我知道可以apt-cache depends <package>用来查看二进制依赖项了。我还没有找到任何方法可以在单个命令调用中显示相同的构建依赖关系信息,然后可以使用该信息来实现所需的功能。

那么,如何才能apt-get build-dep <package>消除的影响,即删除先前通过调用该命令安装的软件包?


Braiam在下面的回答中给出了与构建相关的软件包:

autotools-dev
debhelper
dpkg-dev
libexpat-dev
libgd2-noxpm-dev
libgeoip-dev
liblua5.1-dev
libmhash-dev
libpam0g-dev
libpcre3-dev
libperl-dev
libssl-dev
libxslt1-dev
zlib1g-dev

完整apt-get autoremove要删除的软件包是:

build-essential debhelper dpkg-dev libpcre3-dev libpcrecpp0 libssl-dev zlib1g-dev

build-essential在这里尤其不希望这样做,但是我可以自己解决此问题。

实际安装的软件包列表为:

debhelper
dh-apparmor
gettext
html2text
intltool-debian
libcroco3
libgettextpo0
libpcre3-dev
libpcrecpp0
libssl-dev
libunistring0
po-debconf
zlib1g-dev

Answers:


4

好吧,没有我所承诺的天资(搜索条件一团糟),因此我们需要使用旧的apt:

sudo apt-get autoremove $(apt-cache showsrc PACKAGE_NAME | sed -e '/Build-Depends/!d;s/Build-Depends: \|,\|([^)]*),*\|\[[^]]*\]//g')

参考:http : //www.webupd8.org/2010/10/undo-apt-get-build-dep-remove-build.html


这似乎有些奏效,但并非可靠,它将用给我的东西来编辑我的问题。
0xC0000022L 2013年

1
sudo apt-mark manual build-essential将不理会那个包裹。
肯·夏普

0

风滚草写道

对于将来,我强烈建议使用mk-build-deps...而不是aptitude build-dep。这就在系统中留下了一个软件包...,该软件包[具有依赖项]位于build-deps上,以后可以轻松卸载。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.