我正在尝试将软件安装到特定的目录。 我find了几种方法,但不知道它们之间有什么区别。
./configure --prefix=***
make install --prefix=***
make install DESTDIR=***
make install prefix=***
我对这四项function感到困惑。 他们是否达到了相同的目标?
Linux上的第一个命令结果是否可信?
awk shebang不起作用
来自ps的列的含义
最后运行不同的选项GNU并行
编号1确定软件包安装的位置,以及在运行时将查找关联文件的位置。 这是你应该使用,如果你只是编译东西在一个单一的主机上使用。
编号3用于安装到临时目录,该目录不在运行包的位置。 例如,在构建deb包时使用。 构建软件包的人实际上并没有把所有东西都安装到自己系统的最后一个地方。 他可能已经安装了一个不同的版本,不想打扰它,或者他甚至可能不是根。 所以他用
./configure --prefix=/usr
所以程序将在运行时期望安装在/usr
make install DESTDIR=debian/tmp
实际上创建目录结构。
4号将安装到不同的地方,但不创建DESTDIR=/foo/bar/baz所有的目录。 它通常与GNU Stow via一起使用
./configure --prefix=/usr/local && make && sudo make install prefix=/usr/local/stow/foo
,它会在/usr/local/stow/foo/bin安装二进制文件。 通过对比,
make install DESTDIR=/usr/local/stow/foo
会在/usr/local/stow/foo/usr/local/bin安装二进制文件。 这可能是第2号实际上应该是。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。