从源代码构建的正确方法

从源代码构建的正确方法

我以普通用户身份登录。我应该使用:

./configure && make && make install

或者

sudo ./configure && sudo make && sudo make install

或者

./configure && make && sudo make install

安装软件包时。

有人可以解释一下其中的区别吗?

我希望所有用户都能使用它。

答案1

您的第三个版本是正确的./configure && make && sudo make install。由于您不会尝试在系统目录中写入文件,因此可以以普通用户身份进行 Make 和 configure,make install通常会尝试将二进制文件复制到 /usr/bin 或 /bin,这需要 root 访问权限才能写入。

答案2

您需要最新版本:

./configure && make && sudo make install

配置和制作可以在本地文件夹中进行,但您需要 root 权限才能安装。该命令可完成此操作。

确保要安装的应用程序尚未在包管理器中。通常,使用系统预编译的软件比尝试查找所有依赖项来编译某些东西要容易得多。

答案3

您应该使用尽可能少的权限。通常是:

./configure && make && sudo make install

答案4

&& 由您的原始 shell 解析。在前面放置一个 sudo 只会影响配置。最后一个选项最有意义,因为它将以普通用户身份进行配置和编译,然后安装结果供所有人使用。

需要注意的是,某些 configure 脚本会检测到它们以非 root 用户身份运行,并创建安装到 $HOME 或类似位置的 makefile。在这种情况下,您也需要“sudo ./configure”。如果您以 root 身份运行 configure 或 make,您会在常规用户目录中遇到一些 root 拥有的文件的烦恼。

相关内容