在我解压了包含要安装的软件的 tar 文件后,我运行
./configure
然后:
make
make install
但是这个软件安装在哪里?我如何通过终端找到它的路径?
make
Linux 会将所有程序安装在特定目录中吗?还是仅将它们安装到发出命令的 tar 文件的同一目录中?
答案1
没有规则,但通常如此/usr/local
(即/usr/local/bin
对于二进制文件)。
您还可以使用选项指定要安装的位置--prefix
。例如
./configure --prefix /home/myuser
将在您的主目录中安装该软件。
答案2
“make -n install” 将对安装过程进行试运行并告诉您将安装到哪里。
答案3
针对 Matteo 的回答,您可以检查 Makefile 以查看特定程序的安装位置。以 GNU Hello 为例:
/usr/local/src/hello-2.10 $ cat Makefile | grep prefix
...
bindir = ${exec_prefix}/bin
datarootdir = ${prefix}/share
exec_prefix = ${prefix}
includedir = ${prefix}/include
libdir = ${exec_prefix}/lib
libexecdir = ${exec_prefix}/libexec
localstatedir = ${prefix}/var
prefix = /usr/local
...
我们可以看到它将被安装到/usr/local
(prefix
变量) 中。我们还可以看到各种文件将被放入哪些子目录中,例如二进制文件 (变量bindir
))。