php / php/php-src

Literal ${wl} in build commands

未关闭
#10,348 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 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

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

首先,使用 phpize 在 macOS 上重现一个捆绑或第三方 PHP 扩展的构建,并检查打印出的构建命令。追踪字面量 ${wl} 是在哪里引入的,以及链接器标志是如何生成的;完成的标准是命令不再打印未解析的占位符。

由索引模型根据 Issue 内容生成。

评估

技术栈
c
领域
build-system
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
45/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。