Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

build from source fails on macos

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

还没有人认领这个 Issue。

评估

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

调研方向

首先,在不区分大小写的 macOS 文件系统上重现 pip install .,并检查参与名称冲突的仓库根目录 BUILD 文件。将 package build 路径与 Bazel workaround 进行比较;当 package 可以通过 pip install . 成功安装且不需要 Bazel 时,即表示完成。

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

描述

bug

Describe the bug

Running pip install . on macOS fails with the following error:

running build_py
creating build/lib/tensorflow_model_optimization
error: could not create 'build/lib/tensorflow_model_optimization': Not a directory

System information

  • Operating System: macOS
  • File system: Case-insensitive (default macOS file system)

Root cause

macOS uses a case-insensitive file system by default.
In the repository root, there is a file named BUILD. During the pip install . process, pip attempts to create a directory named build.
Because BUILD and build are treated as the same path on a case-insensitive file system, directory creation fails.

Workaround

Building and installing the package via Bazel works correctly:

git clone https://github.com/tensorflow/model-optimization.git
cd model-optimization

bazel build --copt=-O3 --copt=-march=native :pip_pkg
PKGDIR=$(mktemp -d)
./bazel-bin/pip_pkg "$PKGDIR"
python -m pip install --upgrade "$PKGDIR"/*.whl

Expected behavior

pip install . should succeed on macOS without requiring a Bazel-based workaround.

Additional notes

This issue appears to be specific to case-insensitive file systems and may not reproduce on Linux or on macOS systems configured with a case-sensitive file system.

主要语言
Python
星标
1.6k
派生
349
平均合并
3 天 2 小时
30 天内合并 PR
1

贡献指南

打开贡献指南

从这里开始

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

tensorflow/model-optimization 的其他 Issue

查看 tensorflow/model-optimization 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 发到你的邮箱

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