Literal ${wl} in build commands
未关闭
还没有人认领这个 Issue。
Bug
Category: Build System
Status: Needs Triage
- 主要语言
- C
- 星标
- 40.4k
- 派生
- 8.2k
- 平均合并
- 2 天 13 小时
- 30 天内合并 PR
- 96
描述
Description
When building a PHP extension using phpize (either a bundled extension or third-party extension) on macOS I see the literal string ${wl} in the build commands that are printed to the terminal, e.g.:
/usr/bin/clang ${wl}-undefined ${wl}dynamic_lookup -o .libs/soap.so -bundle .libs/soap.o .libs/php_encoding.o .libs/php_http.o .libs/php_packet_soap.o .libs/php_schema.o .libs/php_sdl.o .libs/php_xml.o -L/opt/local/lib -lxml2 -arch x86_64 -Wl,-headerpad_max_install_names -Wl,-syslibroot -Wl,/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk -arch x86_64 -Wl,-rpath -Wl,/opt/local/lib
Shouldn't that ${wl} have been replaced with -Wl, somewhere beforehand?
PHP Version
8.2.1
Operating System
macOS 13.0.1
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
首先,使用 phpize 在 macOS 上重现一个捆绑或第三方 PHP 扩展的构建,并检查打印出的构建命令。追踪字面量 ${wl} 是在哪里引入的,以及链接器标志是如何生成的;完成的标准是命令不再打印未解析的占位符。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- c
- 领域
- build-system
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 45/100