【问题标题】:meaning of ./configure --with-ssl=openssl./configure --with-ssl=openssl 的含义
【发布时间】:2014-12-18 18:16:04
【问题描述】:

我关注了这个install wget tutorial

在我运行这个之后

./configure --with-ssl=openssl

它运行了这么多检查,它到底做了什么?它改变了我的系统吗?

如果是这样,那么使用 MacPort 等包管理工具是否更安全或更错误证明,这样这样的“配置”就不会像这样手动完成,或者这些工具是否会做同样的事情以让 wget 工作?

对不起,我对 shell 命令很陌生。

谢谢

【问题讨论】:

  • 从技术上讲,是的,它确实改变了你系统中的一些东西——它会写出 makefile、配置文件等等等等,这样你就可以开始构建 wget。
  • @Marc B 它会影响我系统中的其他任何东西吗?我有点害怕继续前进。我的系统中有一个 git 分支。会影响它吗?当我运行这个 ./configure 命令时,它是否只对我所在的那个 wget 文件夹起作用?
  • 如果你使用make install,你最终会在系统的某个地方得到一个 wget 二进制文件。所以是的,事情会改变。它会影响你的 git 目录吗?不知道,可能不是,但不要相信我的话。

标签: macos shell command-line wget


【解决方案1】:

这是构建过程的一部分。 configure 脚本收集有关您的系统的信息并将选项构建到本地文件中,仅此而已。

通常,此脚本由autoconf 创建,用于确定构建的先决条件是否已正确安装等。它会将其收集到文件config.save 中,还可能生成makefile 和/ 或其他构建基础架构,以便 make 能够专注于编译和链接源文件。

不应期望configuremake 更改运行它们的目录树之外的任何内容。

按照惯例,make install 会将最终构建工件复制到适当的位置,以便系统的其他部分可以找到并使用它们。

另见http://www.edwardrosten.com/code/autoconf/

预打包的二进制文件在打包之前已经在远程系统上构建(尽管有允许或要求您在本地构建的包管理器;Gentoo Linux 著名地使用后一种方法)并且通常是最简单的获取方法如果您没有特殊要求,例如使用特定 SSL 版本构建,或完全禁用 SSL,或在任何人打包之前获得最前沿的版本,则可以使用工具。

【讨论】:

  • 它会影响我系统中的其他任何东西吗?我有点害怕继续前进。我的系统中有一个 git 分支。会影响它吗?当我运行这个 ./configure 命令时,它只对我所在的那个 wget 文件夹起作用吗?
  • 我不明白这怎么能说得更清楚。它只会更改wget 目录中的内容。即使使用make 构建也只会修改此目录树中的内容。只有make install 才会影响系统的其余部分。
  • 啊,这实际上是下一步,制作和安装。所以如果我这样做了,那会改变我系统中的许多设置,但如果我不这样做,什么都不会受到影响,对吧?但是,如果我在这个配置步骤停止,它会阻止任何未来的进程还是只针对那个 wget 文件夹?
  • 换句话说,配置是否已经在系统方面完成了,或者它只是准备好在我“制作”后进行更改?
  • 感谢您的详细更新。我更新了我的问题,只是为了跟进,如果可能的话,您可以相应地更新您的答案。非常感谢!
猜你喜欢
  • 2014-10-16
  • 1970-01-01
  • 1970-01-01
  • 2022-12-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多