Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failure in crossenv #56

Closed
blawrence-ont opened this issue Sep 4, 2024 · 1 comment · Fixed by #55
Closed

Failure in crossenv #56

blawrence-ont opened this issue Sep 4, 2024 · 1 comment · Fixed by #55
Labels
bug Something isn't working

Comments

@blawrence-ont
Copy link

Describe the bug

freakboy3742/crossenv@6d88cb8 appears to have broken host arch lookup. The issue comes from the assignment of self.host_machine and self.host_is_simulator since, as noted at the top of that function, host_platform can be of the form ios-12.0-iphonesimulator-arm64 and hence host_info[3] is arm64 which isn't a key in the map.

crossenv isn't pinned to a specific commit in https://github.com/beeware/mobile-forge/blob/main/pyproject.toml#L34 so all builds are affected (pinning to crossenv @ git+https://github.com/freakboy3742/crossenv@b8a3a72d59b2cf484cc6b31bcd122d7a975ef314 "fixes" the issue locally).

Also note that _split_apple_os_version() is missing raise ValueError(...) in the else: case of that commit.

Steps to reproduce

  1. Try to build forge iphoneos:arm64 libpng
  2. Observe error message ERROR: 'arm64'

Expected behavior

The build should complete without error

Screenshots

No response

Environment

  • Operating System: macOS 14.6.1 (23G93)
  • Python version: 3.12

Logs

% forge iphoneos:arm64 libpng
================================================================================
Building libpng 1.6.34 for ios_12_0_iphoneos_arm64
================================================================================

[venv3.12-ios_12_0_iphoneos_arm64] Download package sources
Downloading https://download.sourceforge.net/libpng/libpng-1.6.34.tar.gz.... done.

[venv3.12-ios_12_0_iphoneos_arm64] Unpack sources
Unpacking downloads/libpng-1.6.34.tar.gz...

[venv3.12-ios_12_0_iphoneos_arm64] Apply patches
No patches to apply.

[venv3.12-ios_12_0_iphoneos_arm64] Create clean build environment
Creating venv3.12-ios_12_0_iphoneos_arm64...

ERROR: 'arm64'
********************************************************************************
Failed build: libpng 1.6.34 for iphoneos 12.0 on arm64
********************************************************************************

Additional context

No response

@blawrence-ont blawrence-ont added the bug Something isn't working label Sep 4, 2024
@freakboy3742
Copy link
Member

Thanks for the report. Unfortunately, you've found this project in a transition period. We've recently landed a bunch of changes to the iOS support packages reflecting the official PEP 730 changes adding iOS support to CPython itself; but those changes include some subtle incompatibilities with the Mobile Forge repository.

I'm in currently in the middle of restoring Mobile Forge to working status; #55 is my current work in progress toward that goal. I've pushed some updates to my fork of crossenv (late yesterday); I think those changes will address the host_is_simulator issues you're seeing.

As of right now, Mobile Forge is able to build Python 3.12 binaries; I'm hoping to get 3.9-3.11 working in the next day or so (possibly sooner); then look at updating the recipes to add Python 3.13 support.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants