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

Can't use different Charts Framework with different versions of Xcode #2499

Closed
kaleevans opened this issue Jun 3, 2017 · 3 comments
Closed

Comments

@kaleevans
Copy link

If I compile the Charts lib into a Framework with Xcode 8.3.2, and give the framework to another developer to use in his Obj-C based project, they cannot use it if they are using another Xcode version other than 8.3.2.

For example, if developer creates an Obj-C project and imports the Charts framework I compiled, and attempts to compile and link in his application using Xcode 8.2.1, he will get runtime errors when attempting to use the framework.

If the developer however compiles his project with Xcode 8.2.1, it will work fine.

There is an issue the other way around as well. For example, if I compile the Charts lib using Xcode 8.1 for example, and give to a developer to compile with his project using Xcode 8.3.2, he will get runtime errors that prevent the application from launching.

I am using Charts 3.0.2.
Is there anyway around this? If the version of Xcode being used supports Swift 3.0, then I believe there shouldn't be a problem with this workflow.

@kaleevans
Copy link
Author

Just to add, the failure appears to start from the fastBindLazySymbol call from the runtime, and happens whenever I try to do anything with a ChartView(such as set its frame or set its data).

Using the Chart lib as an Xcode project is not an option. We need to use it as a framework.

@pmairoldi
Copy link
Collaborator

This is a problem with swift without ABI stability. If the library is compiled with another version of swift then your Xcode needs to have that version of swift. Our library is compiled with swift 3.1 so you need an Xcode that has swift 3.1 which is 8.3 only.

@kaleevans
Copy link
Author

Thank you for this answer. I hope the Swift team can work on a fix for this in the very near future. This is actually a big issue for us.

Thanks

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

No branches or pull requests

2 participants