<p class="f_center"><img src="http://dingyue.ws.126.net/2024/1030/5d8e3d8cg00sm5mpa0082d200hs002sg00it002x.gif"/><br/></p><p id="34NS8U0T">作者 | Tim Anderson</p><p id="34NS8U0U">译者 | 王强</p><p id="34NS8U0V">策划 | Tina</p><p id="34NS8U10">SQLite 团队正在将下一个版本 从 GNU Autotools 迁移到 Autosetup,并警告说,虽然这一变化对于大多数用户来说没什么影响,但“某些构建级别的中断是不可避免的”。因为这两种工具之间存在差异,并且自动构建过程使用的配置有很多种类。</p><p id="34NS8U11">这类工具的设计目标是根据开发人员的要求,通过编译时选项为本地环境正确配置并自定义构建(build)。工具的输出包括一个 makefile,其中包含了使用 make 实用程序构建项目时要执行的任务。</p><p id="34NS8U12">许多开源项目都在使用 GNU Autotools,但 SQLite 开发人员发现使用 Autosetup(由嵌入式 Linux 顾问 Steve Bennett 创建)有几个优势。Autosetup 由高级解释语言 TCL 驱动,而 GNU Autoconf 使用 GNU M4(一个宏处理器)生成 shell 脚本。由于“TCL 相对用户较为友好”,使 Autosetup 构建文件更易维护。</p><p id="34NS8U13">Autosetup 的另一个优点是,它的所有文件都保存在 SQLite 源代码树中,而 GNT Autotools 是外部依赖项。Fossil SCM 已经使用了 Autosetup,Fossil SCM 是由 D Richard Hipp 博士创建的软件配置管理器,他也是 SQLite 的开发人员。</p><p id="34NS8U14">Fossil 贡献者 Stephan Beal 在关于工具迁移的官方文章中提到,“对于那些只运行‘https://www.163.com/dy/article/configure && make’的人们来说,就算有变化也是很小的。” 话虽如此,Autotools 与 Autoconf 并不完全兼容。例如,SQLite 的 –enable-tempstore 选项在 Autosetup 中必须变为 –with-tempstore,其中 –enable 具有特殊含义。</p><p id="34NS8U15">最大的问题不是出在开发人员将 SQLite 构建为独立工具的场景中,而是将 SQLite 嵌入另一个项目的自动构建流程的情况。在某些情况下这可能需要重新配置。</p><p id="34NS8U16">另一个问题是 Autosetup 无法像 Autoconf 那样支持那么多平台,这将影响“更边缘的目标平台”,包括 BlackBerrry QNX。该团队建议“一个后备选项是为此类平台提供静态 makefile,类似于目前为 Windows 平台所做的那样。”</p><p id="34NS8U17">这次迁移表明 Hipp 的 SQLite 团队不愿意随波逐流。Hipp 是 Git 怀疑论者,很高兴使用 Fossil 进行源代码管理。Beal 表示,“Richard 的理念之一是‘自由意味着能够照顾好自己’,这一理念贯穿于他的所有软件项目,这些项目都避免了外部依赖,因为每个依赖都会降低项目的自由度……有时甚至会重新发明轮子(比如实现自己的 SCM)。”</p><p id="34NS8U18">放弃 Autoconf,转而使用一个不太知名但在他看来更优秀的工具,体现了他的性格特征。</p><p id="34NS8U1A">https://devclass.com/2024/10/24/sqlite-will-migrate-from-gnu-autotools-to-autosetup-team-warns-of-some-build-level-breakage/</p><p id="34NS8U1B"><strong>声明:本文为 InfoQ 翻译,未经许可禁止转载。</strong></p><p id="34NS8U1K">2024 年收官之作:12 月 13 日 -14 日,AICon 全球人工智能开发与应用大会将在北京举办。从 RAG、Agent、多模态模型、AI Native 开发、具身智能,到 AI 智驾、性能优化与资源统筹等大热的 AI 大模型话题,60+ 资深专家共聚一堂,深度剖析相关落地实践案例,共话前沿技术趋势。大会火热报名中,详情可联系票务经理 咨询。</p>
讯享网

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/165435.html