fix(build): release builds fail on macOS 27 because build-time proc-macros are stripped
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 1/5
- 预计耗时
- 1 小时以内
- 新手友好度
- 72/100
- Issue 类型
- 缺陷
- 描述清晰度
- 描述清楚
- 活跃度
- 活跃
- 技术栈
- macos, rust
- 领域
- build-system
调研方向
修复应放在工作区根目录的 Cargo.toml 中,位于设置了 strip = true 的 [profile.release] 部分。先运行 CARGO_PROFILE_RELEASE_BUILD_OVERRIDE_STRIP=false cargo build --release 确认该变通方法有效,然后添加带有 strip = false 的 [profile.release.build-override] 表。完成标准是:release 构建在 macOS 上成功,并且发布的二进制文件仍然是已剥离符号的,可通过查看 cargo build --release 的输出来检查。
由索引模型根据 Issue 内容生成。
描述
Problem
The workspace release profile sets strip = true. Cargo applies it to build-time artifacts too, including the proc-macro dylibs the compiler loads during the build. macOS 27's dyld refuses to load the stripped dylibs (mis-aligned LINKEDIT string pool), so cargo build --release fails on macOS 27. Seen with v0.1.3; v0.1.4 has the same release profile.
Workaround
CARGO_PROFILE_RELEASE_BUILD_OVERRIDE_STRIP=false cargo build --release
Proposal
Add to the workspace Cargo.toml. Shipped binaries stay stripped:
[profile.release.build-override]
strip = false
- 主要语言
- Rust
- 星标
- 16.3k
- 派生
- 1.8k
- 平均合并
- 2 天 5 小时
- 30 天内合并 PR
- 383
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
NVIDIA/OpenShell 的其他 Issue
-
bug(sdk/go): browser login callback binds 127.0.0.1 but redirect_uri uses localhost可能重新可做 关联的 PR 已关闭且未合并。 未关闭state:triage-needed
难度 2/5 1-3 小时 新手友好度 65/100
NVIDIA/OpenShell#4518 · 1 条评论 ·
维护者通常 1 天内回复
-
state:triage-needed
难度 2/5 1-3 小时 新手友好度 62/100
维护者通常 1 天内回复
-
bug(sdk/go): edge (Cloudflare Access) token is cached for the client lifetime and never reloaded未关闭state:triage-needed
难度 2/5 1-3 小时 新手友好度 72/100
NVIDIA/OpenShell#4515 · 1 条评论 ·
维护者通常 1 天内回复
-
state:triage-needed
难度 2/5 1-3 小时 新手友好度 72/100
NVIDIA/OpenShell#4509 · 1 条评论 ·
维护者通常 1 天内回复
-
state:triage-needed
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 1 天内回复
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 62/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 82/100
521xueweihan/HelloGitHub#4023 ·
-
难度 2/5 1-3 小时 新手友好度 75/100
cloudflare/pingora#1055 ·
维护者通常 1 天内回复
-
enhancement
难度 2/5 1-3 小时 新手友好度 75/100
维护者通常 1 天内回复