2017-07-17 49 views
0

我使用以下脚本从源代码安装libC++。不支持make uninstall。什么是卸载它的最好方法?如何从源代码安装后卸载libC++?

git clone --depth=1 https://github.com/llvm-mirror/llvm.git llvm-source 
git clone --depth=1 https://github.com/llvm-mirror/libcxx.git llvm-source/projects/libcxx 
git clone --depth=1 https://github.com/llvm-mirror/libcxxabi.git llvm-source/projects/libcxxabi 

export C_COMPILER=clang 
export COMPILER=clang++ 

# Build and install libc++ 
mkdir llvm-build && cd llvm-build 
cmake -DCMAKE_C_COMPILER=${C_COMPILER} -DCMAKE_CXX_COMPILER=${COMPILER} \ 
     -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \ 
     ../llvm-source 
make cxx 
sudo make install-cxxabi install-cxx 
+0

'make -n install-cxxabi install-cxx'显示什么? – dlmeetei

+0

相关:[make install的反面是什么](https://stackoverflow.com/questions/1439950/whats-the-opposite-of-make-install-ie-how-do-you-uninstall-a-library-在利)。我推荐'checkinstall',它会监视安装的内容。 –

回答

1

好了,很多搜索之后,很显然,没有在未实施make unintsall卸载自动甚至半自动的方式。有两种方法来解决这个问题:

  1. 如果使用cmake然后再次运行安装,但设置标志像-DCMAKE_INSTALL_PREFIX=./output。这将导致cmake将所有文件放入./output。现在您可以观察这些文件,并手动删除它们。我想默认cmake会把这些文件放在/usr/local

  2. 另一个cool trick如果生成install_manifest.txt文件,则可以使用:cat install_manifest.txt | xargs echo sudo rm | sh

相关问题