
当尝试编译 thrift 0.8 版本并期望生成 go 语言库时,用户可能会在 ./configure 命令的输出中发现 go 库构建失败的提示:
....... Building PHP Library ......... : no Building Erlang Library ...... : yes Building Go Library .......... : no (is this saying go library won't be built?)
这明确表示 Thrift 0.8 的构建过程未能成功配置 Go 语言库的生成。导致这一问题的根本原因在于 Thrift 0.8 对 Go 语言版本的支持限制。具体来说,Thrift 0.8 的 configure 脚本设计用于检测 Go 1.0 之前的旧版 Go 编译器和工具链,而非现代 Go 1.x 及更高版本。
Thrift 0.8 的 configure 脚本会尝试查找一系列特定的旧版 Go 命令,例如:
configure:19244: checking for 6g configure:19274: result: /home/jarod/dev/go/go-hg/bin//6g configure:19284: checking for 6l configure:19314: result: /home/jarod/dev/go/go-hg/bin//6l configure:19324: checking for gomake configure:19354: result: /home/jarod/dev/go/go-hg/bin//gomake configure:19364: checking for goinstall configure:19394: result: /home/jarod/dev/go/go-hg/bin//goinstall
这些命令 (6g 是 Go 编译器,6l 是 Go 链接器,gomake 和 goinstall 是旧版 Go 的构建和安装工具) 在 Go 1.0 发布后已被 go build、go install 等统一的 go 命令所取代。因此,即使系统上安装了 Go 1.x 或更高版本,Thrift 0.8 的 configure 脚本也无法识别并利用这些现代 Go 工具链,从而导致 Go 库构建失败。
鉴于 Thrift 0.8 的设计局限性,其本身不支持 Go 1.x 及更高版本的 Go 库构建。要解决此问题,主要有以下两种方法:
PHP经典实例(第2版)能够为您节省宝贵的Web开发时间。有了这些针对真实问题的解决方案放在手边,大多数编程难题都会迎刃而解。《PHP经典实例(第2版)》将PHP的特性与经典实例丛书的独特形式组合到一起,足以帮您成功地构建跨浏览器的Web应用程序。在这个修订版中,您可以更加方便地找到各种编程问题的解决方案,《PHP经典实例(第2版)》中内容涵盖了:表单处理;Session管理;数据库交互;使用We
453
升级 Thrift 版本 (推荐) 这是最推荐和最实用的解决方案。较新的 Thrift 版本已经完全支持 Go 1.x 及更高版本。通过升级到例如 Thrift 0.9.x、0.10.x 或更高版本,可以确保 configure 脚本能够正确识别并使用现代 Go 工具链,从而成功构建 Go 语言库。
./configure make sudo make install
在执行 ./configure 后,您应该能看到 Building Go Library .......... : yes 的输出。
使用 Go 1.0 之前的旧版 Go (不推荐,仅限特定场景) 如果您由于极端遗留系统兼容性要求,必须使用 Thrift 0.8 并且确实需要构建 Go 库,那么理论上您需要安装一个 Go 1.0 之前的 Go 版本(例如 Go 0.x 系列)。然而,这种做法极不推荐,因为 Go 1.0 之前的版本已经非常陈旧,缺乏维护,且与现代 Go 生态系统严重不兼容,会带来大量的开发和维护成本。
Thrift 0.8 无法构建 Go 语言库的问题源于其与 Go 1.0 之后版本的 Go 工具链不兼容。其 configure 脚本查找的是旧版 Go 命令,而现代 Go 环境已不再提供这些命令。为了获得 Go 语言的 Thrift 支持,最直接和推荐的解决方案是升级到支持 Go 1.x 及更高版本的最新 Thrift 版本。
以上就是Thrift 0.8 编译 Go 库兼容性问题解析与解决方案的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号