TL;DR:前にsudo make install
を実行したディレクトリでsudo make uninstall
を実行します。
別のバージョンのCMakeをインストールするこの方法に従いました。 これは、Ubuntuのパッケージマネージャーが提供するバージョンをアンインストールし、ソースコードから手動でダウンロード、コンパイル、インストールしたと言うことです。
これらの指示に正常に従うことができたと仮定すると、Ubuntuのパッケージマネージャーによって提供されるCMakeのバージョン(cmake
パッケージを介して)はすでにアンイ 今インストールしたバージョンはUbuntuのパッケージマネージャーではなく、自分でコンパイルしてインストールしたバージョンであるため、sudo apt-get purge cmake
を再度実行しても削除
cmake
をコンパイルしてからsudo make install
を実行してインストールしたので、解決策は次のとおりです:
- そのコマンドを実行したディレクトリに戻るには、
cd
を使用します。 sudo make uninstall
を実行します。
make install
を実行してインストールできるすべてのソフトウェアに対応するuninstall
ターゲットがあり、make uninstall
を実行して削除できるわけではありません。 しかし、CMakeはこれをサポートしています。1
sudo make install
を実行したフォルダを削除したり、変更したりした場合は、sudo make uninstall
を実行する機能を取り戻すために、それを再構築して再インストールすることをお勧めします(正確に同じバージョンを使用するようにしてください)。 つまり、同じ.tar.gz
ファイルから開始し、使用したすべてのオプション(存在する場合)を./bootstrap
に渡して、同じインストール手順に従います。 その後に引数を指定せずに./bootstrap
を実行しただけの場合は、もう一度実行してください。 sudo make install
を再度実行すると、既にインストールされているファイルに自分自身のコピーが(無害に)上書きされ、sudo make uninstall
を使用することができます。
もう一つの考えられるアプローチは、インストール中に作成されたファイルとディレクトリを正確に把握し、それらのファイルとディレクトリだけを削除しようとすることですが、他のものは削除しません。 CMakeをコンパイルしたときに--prefix
を./bootstrap
に渡さなかった場合、ファイルは/usr/local
にインストールされますが、そのディレクトリを使用するプログラムはそれだけではあ それは/usr/local
のさまざまなサブディレクトリ(bin
やlib
など)にファイルをインストールしていたので、/usr/local
に他に何もインストールされていないことを知っている状況を除いて、このオプションには多くの作業が必要です。
1デフォルトでは、CMakeを使用して独自のソフトウェアのビルドスクリプトを作成すると、明示的に要求しない限り、uninstall
ターゲットは生成されないため、sudo make uninstall
を実行してCMakeをアンインストールできるかどうかについて混乱するのは簡単です。 しかし、CMake自体は簡単にアンインストールできるように設計されており、そのソースコードはそれらのアンインストールターゲットを定義しています。 実行中の./bootstrap
から生成されたMakefile
には、次のように表示されます:
#=============================================================================# Target rules for targets named uninstall# Build rule for target.uninstall: cmake_check_build_system $(MAKE) -f CMakeFiles/Makefile2 uninstall.PHONY : uninstall# fast build rule for target.uninstall/fast: $(MAKE) -f CMakeFiles/uninstall.dir/build.make CMakeFiles/uninstall.dir/build.PHONY : uninstall/fast
また、CMakeListsでアンインストールサポートを検索することもできます。txtファイル。確かに、私はこれをCMake3.9でテストしました。0、それは動作します。 uninstall
ターゲットが生成され、sudo make uninstall
を実行するとCMakeがアンインストールされます。