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

Use arch when looking for device support path #441

Merged
merged 1 commit into from Jan 17, 2020

Conversation

jaimecbernardo
Copy link

Uses the device CPU architecture value to look for DeviceSupport path.

When you have two different DeviceSupport folders for the same iOS version but different architectures, ios-deploy choses the wrong one for arm64e devices. For example, if you have both '13.3 (17C54)' and '13.3 (17C54) arm64e' in 'Library/Developer/Xcode/iOS DeviceSupport', ios-deploy picks '13.3 (17C54)', using the wrong debug symbols when debugging applications on an arm64e device.

This change makes ios-deploy also search for the arm64e path when debugging a application on a known arm64e device.

Uses the device CPU architecture value to look for DeviceSupport path.
When you have two different DeviceSupport folders for the same iOS
version but different architectures, ios-deploy choses the wrong one
for arm64e devices. For example, if you have both '13.3 (17C54)' and
'13.3 (17C54) arm64e' in 'Library/Developer/Xcode/iOS DeviceSupport',
ios-deploy picks '13.3 (17C54)', using the wrong debug symbols when
debugging applications on an arm64e device.
This change makes ios-deploy also search for the arm64e path when
debugging a application on a known arm64e device.
@gabebear
Copy link

gabebear commented Jan 15, 2020

This looks great, thank you for finding this!

I’m unaware of what symbols aren’t present when we aren’t taking the arch into account when calculating this path. Could you file a bug describing what’s happening?

I want to make sure we shouldn’t be using the arch from the bundle rather than the device. (e.g. using '13.3 (17C54) arm64e' when debugging arm64e executables and '13.3 (17C54)' otherwise)

@jaimecbernardo
Copy link
Author

Hi @gabebear ,

Thanks for the feedback. I've opened an issue: #445

Regarding using the arch from the bundle, I see this issue happening with arm64 apps being run on arm64e devices, so I think chosen Device Support has to be matched with device rather than the bundle.
Other sign for this is that when Xcode prepares DeviceSupport for just the arm64e device, only the '13.3 (17C54) arm64e' folder gets created.

Copy link

@gabebear gabebear left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the explanation.

@gabebear gabebear merged commit e6f7777 into ios-control:master Jan 17, 2020
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.

None yet

2 participants