gpt4 book ai didi

uninstallation - 如何获得 'make uninstall'删除空目录和文件?

转载 作者:行者123 更新时间:2023-12-04 13:51:01 32 4
gpt4 key购买 nike

当我使用make uninstall卸载应用程序时,它会留下make install已创建的一些空目录,例如例如/usr/share/foo/及其子目录(例如/usr/share/foo/applications等)。

我通过Google发现,automake生成的uninstall目标不会自动删除空目录,因为它不知道应用程序是否拥有目录(例如,它是在make install期间创建的),还是借用了该目录(例如,在make install期间存在的目录)。

目前,我的make文件都没有明确的uninstall目标,make隐式地知道它必须删除哪些文件。我如何教它也删除有问题的文件夹?

最佳答案

这是解决方案,我只需要注册一个uninstall-hook目标,然后执行必要的任务以删除目录。在此示例中,${pkgdatadir}将扩展为/usr/share/foo。 if-then是必需的,否则make distcheck目标将失败。

uninstall-hook:
if test -d ${pkgdatadir}/applications; then rmdir ${pkgdatadir}/applications; fi
if test -d ${pkgdatadir}; then rmdir ${pkgdatadir}; fi

卸载目标运行后,将调用 uninstall-hook规则。

关于uninstallation - 如何获得 'make uninstall'删除空目录和文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19521335/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com