Skip to content

Fix two separate build and installation errors I ran into on my macOS Sequoia 15.7.5.#1

Open
cbuchner1 wants to merge 2 commits into
ZimengXiong:mainfrom
cbuchner1:main
Open

Fix two separate build and installation errors I ran into on my macOS Sequoia 15.7.5.#1
cbuchner1 wants to merge 2 commits into
ZimengXiong:mainfrom
cbuchner1:main

Conversation

@cbuchner1
Copy link
Copy Markdown

A few changes to pyproject.toml and setup.py were required to build and install successfully.

The errors I ran into were:
setuptools.errors.InvalidConfigError: License classifiers have been superseded by license expressions

The error is probably caused by a newer setuptools package than you used (v77 or above)

The 2nd error was
error: Error: setup script specifies an absolute path:
/Users/buchner/MetalFlashAttention/src/metal_binding.cpp

That matches a known PyTorch BuildExtension problem: during wheel/editable builds, absolute source paths can end up in the extension metadata, and setuptools rejects them.

What changed:
Removed:
•os.path.abspath(...)
•os.path.join(here, ...)
•absolute src_dir
Replaced absolute extension paths with:
•"src/metal_flash_attention.mm"
•"src/metal_binding.cpp"
Replaced include_dirs=[src_dir] with:
•include_dirs=["src"]

fixes setuptools.errors.InvalidConfigError: License classifiers have been superseded by license expressions
Refactor setup.py to use pathlib for file paths and improve long description handling. This changes the extension source file paths to be relative, not absolute.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant