indygreg / indygreg/PyOxidizer
Static builds don't work with Cython
- Dominant language
- Rust
- Stars
- 6.2k
- Forks
- 256
- PR merge metrics
- No merged PRs in 30d
Description
Our current method for producing static builds is to patch `distutils` in order to capture object files (`.o` or `.obj`) before they are linked. This allows us to easily supplement the final set of linked objects with ones providing symbols for extensions.
This approach is currently broken on Cython because we don't have a mechanism to peer into Cython and obtain the list of object files it produces. This can result in build/link time or possibly even run-time failures due to missing symbols.
#107, #169, #171, #215, #339, and possibly other issues have exposure to this shortcoming.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by tracing the current distutils patch that captures object files for static builds, then investigate how Cython-produced object files could be discovered. Done means static builds reliably include the objects needed by Cython extensions without missing-symbol failures; the linked issues provide additional affected cases to examine.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100