如何删除glibc

时间:2015-10-11 21:07:33

标签: linux installation makefile gnu glibc

我刚尝试将glibc版本2.19安装到我的计算机上,如下所示:

1)我用

克隆了glibc git repo
$ cd ~
$ git clone git://sourceware.org/git/glibc.git

2)我用

检查了2.19版本
$ git co tags/glibc-2.19

3)我在我的主目录中创建了一个目录objdir,并使用

构建了那里的安装
$ cd ~/objdir
$ ~/glibc/configure --prefix=$HOME
$ make

4)我用

测试了制作
$ make check

这给了我一个错误,但我在谷歌搜索中发现的一些网页告诉我这个特殊错误并不是什么大问题。 (我希望我能记住错误和网页是什么,但我不能,而且我发现网页使用的是我现在无法访问的计算机,所以它不在我的网页上我现在正在打字的网络历史。)

5)我尝试使用

安装glibc
$ make install

这对我来说是疯狂的事情。中途安装失败,现在使用损坏的glibc,我的用户帐户完全停止工作。

幸运的是,我的系统管理员能够移动我的.bashrc - 指向我主目录下的损坏的glibc - 并将我恢复为默认.bashrc。所以我可以再次登录我的帐户并做一些事情。

我的问题是,如何彻底删除位于我的主目录下的glibc的已损坏安装?

1 个答案:

答案 0 :(得分:2)

  

我该怎么做才能完全删除位于我的主目录下的glibc的破坏安装

cd && ls -lrt

将显示已安装的文件和目录。可能你有include/lib/(或lib64/),etc/以及其他更多内容。只需删除这些目录,你就可以了。

您可能还想阅读this answer

<强>更新

  

该命令显示我主目录中的所有目录,其中有很多目录。

它按时间顺序列出它们(最新的最后一个),因此最近修改的所有文件都在底部。这些是您要删除的内容。

  

鉴于我已将glibc以外的东西安装到我的主目录

我希望您现在意识到将任何安装到您的主目录中是一个坏主意(TM)。

假设您在失败的glibc安装后没有安装任何,并且在过去3天内发生了失败的glibc安装,则以下命令可能会产生令人满意的结果:

find include lib etc -mtime -3 | egrep -v '^(include|etc|lib)$' |
  tee /tmp/to-delete

现在检查/tmp/to-delete您不想删除的任何文件(如果我的假设成立,则不应该是任何此类文件)。

最后,删除它们:

cat /tmp/to-delete | xargs rm -rf 

<强> UPDATE2:

  

不幸的是,我不认为你的过去3天&#34;启发式在这里工作。我昨天安装了一堆C库--MPFC,GMP,MPC和glibc - 我根本不清楚哪些文件是glibc的一部分,而不是其他文件。

好的。您要做的是找到属于glibc安装的文件列表。你可以这样做:

cd glibc-2.19-src; mkdir build;
cd build; ../configure --prefix `pwd`/../install
make -j12 all && make install

您现在已经安装了#34;干净利落的&#34; glibc-2.19-src/install中的目录。您可以在那里获得文件列表:

cd ../install; find . -type f > /tmp/to-delete

最后你准备清理了:

cd; cat /tmp/to-delete | xargs rm -f

这可能仍会留下一些空目录,但这通常不是什么大问题。如果你想删除它们:

cd ~/glibc-2.19-src/install
find . -type d > /tmp/dirs-to-delete
cd; cat /tmp/dirs-to-delete | xargs rm 2>/dev/null

(最后一个命令将无法删除任何非空目录,这正是您想要的。)