Flash3001 / iOSCharts.Xamarin

A Xamarin port by Lucas Teixeira for Charts (ios-charts) by Daniel Cohen Gindi, inspired by Philipp Jahoda
Other
68 stars 20 forks source link

Library not loaded: @rpath/libswiftCore.dylib #49

Closed mingxli closed 5 years ago

mingxli commented 5 years ago

Hi Flash3001,

First of all, thank you very much for all your work!

I am experiencing the following error:

Termination Description: DYLD, Library not loaded: @rpath/libswiftCore.dylib | Referenced from: /private/var/containers/Bundle/Application/AEF05DDC-4D43-45CB-B80D-39AF79E50022/MyApp.app/Frameworks/Charts.framework/Charts | Reason: image not found

This is different from (https://github.com/Flash3001/iOSCharts.Xamarin/issues/17), in which I was able to upload my app to the iTunes Connect and setup it for TestFlight, but when I download the app through TestFlight and run it, the app would crash right away and I get the above error.

I am currently using iOSCharts 3.2.1 with Xamarin.Swift4 4.0.0.0. When I generated the ./SwiftSupport directory using package_ipa_default.sh script, I was on XCode 10.2. Now I am on XCode 10.2.1.

I also generated a new ./SwiftSupport directory while running XCode 10.2.1 (with iOSCharts 3.2.1 with Xamarin.Swift4 4.0.0.0), but then I get the "Invalid Swift Support" email after loading the app to the iTunes Connect.

Upgrading iOSCharts to 3.2.2 causing compilation error:

Error: Charts Framework do not match installed Swift version. Framework: 5.0. Installed: 5.0.1. Change your Xcode or library version.

I am on Visual Studio for Mac v8.0.3 build 14.

Any suggestion would be greatly appreciated! Thanks in advance!

mingxli commented 5 years ago

By the way, my app runs totally fine locally on Simulator and Devices.

Flash3001 commented 5 years ago

Hey @mingxli, I saw the Xcode 10.2.1 update just today.

It was crashing because your Xcode version 10.2.1 comes with Xcode 5.0.1 instead of Swift 4. When you create the SwiftSupport folder using that script it copies the files from Xcode. Charts 3.2.1 was expecting Swift 4, not 5.

Charts 3.2.2 was built with Swift 5 that comes on Xcode 10.2. You have 10.2.1 installed which comes with 5.0.1 so it is a mismatch.

With Swift 5 that mismatch should not be a problem, but I still need to run some tests before updating the error message that you see. I will only have time to work on that next week 😥

For now the solution is for you to downgrade your Xcode to 10.2

mingxli commented 5 years ago

Thanks Lucas for the speedy reply! I'll give that a try! 👍

On Thu, Apr 18, 2019 at 10:05 PM Lucas Teixeira notifications@github.com wrote:

Hey @mingxli https://github.com/mingxli, I saw the Xcode 10.2.1 update just today.

It was crashing because your Xcode version 10.2.1 comes with Xcode 5.0.1 instead of Swift 4. When you create the SwiftSupport folder using that script it copies the files from Xcode. Charts 3.2.1 was expecting Swift 4, not 5.

Charts 3.2.2 was built with Swift 5 that comes on Xcode 10.2. You have 10.2.1 installed which comes with 5.0.1 so it is a mismatch.

With Swift 5 that mismatch should not be a problem, but I still need to run some tests before updating the error message that you see. I will only have time to work on that next week 😥

For now the solution is for you to downgrade your Xcode to 10.2

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Flash3001/iOSCharts.Xamarin/issues/49#issuecomment-484753440, or mute the thread https://github.com/notifications/unsubscribe-auth/AG3V7YB6JR52TIQ5G5G3E4LPREZIHANCNFSM4HHAVW2Q .

mingxli commented 5 years ago

Hi Flash3001,

Just out of curiosity, do you have an idea on when the new version will be out? 😉 Thanks again!

Flash3001 commented 5 years ago

@mingxli The update is released now.

mingxli commented 5 years ago

Hi Flash3001,

Thanks for getting the update out so quickly. I have updated to the newest iOSCharts 3.2.2.1 nuget package. The build went successfully with XCode 10.2.1 (10E1001). However, when I submitted my app to the iTunes Connect, I got the "Invalid Swift Support" email from Apple. I did generate a new ./SwiftSupport folder after the update. Any help or suggestion would be greatly appreciated.

Thanks again for your help!

Flash3001 commented 5 years ago

@mingxli what’s the error description?

mingxli commented 5 years ago

Invalid Swift Support - The files libswiftos.dylib, libswiftQuartzCore.dylib, libswiftCoreFoundation.dylib, libswiftObjectiveC.dylib, libswiftCoreImage.dylib, libswiftUIKit.dylib, libswiftFoundation.dylib, libswiftDarwin.dylib, libswiftCoreGraphics.dylib, libswiftDispatch.dylib, libswiftCore.dylib, libswiftMetal.dylib don’t match /Payload/My.app/Frameworks/libswiftos.dylib, /Payload/My.app/Frameworks/libswiftQuartzCore.dylib, /Payload/My.app/Frameworks/libswiftCoreFoundation.dylib, /Payload/My.app/Frameworks/libswiftObjectiveC.dylib, /Payload/My.app/Frameworks/libswiftCoreImage.dylib, /Payload/My.app/Frameworks/libswiftUIKit.dylib, /Payload/My.app/Frameworks/libswiftFoundation.dylib, /Payload/My.app/Frameworks/libswiftDarwin.dylib, /Payload/My.app/Frameworks/libswiftCoreGraphics.dylib, /Payload/My.app/Frameworks/libswiftDispatch.dylib, /Payload/My.app/Frameworks/libswiftCore.dylib, /Payload/My.app/Frameworks/libswiftMetal.dylib. Make sure the files are correct, rebuild your app, and resubmit it. Don’t apply post-processing to /Payload/My.app/Frameworks/libswiftos.dylib, /Payload/My.app/Frameworks/libswiftQuartzCore.dylib, /Payload/My.app/Frameworks/libswiftCoreFoundation.dylib, /Payload/My.app/Frameworks/libswiftObjectiveC.dylib, /Payload/My.app/Frameworks/libswiftCoreImage.dylib, /Payload/My.app/Frameworks/libswiftUIKit.dylib, /Payload/My.app/Frameworks/libswiftFoundation.dylib, /Payload/My.app/Frameworks/libswiftDarwin.dylib, /Payload/My.app/Frameworks/libswiftCoreGraphics.dylib, /Payload/My.app/Frameworks/libswiftDispatch.dylib, /Payload/My.app/Frameworks/libswiftCore.dylib, /Payload/My.app/Frameworks/libswiftMetal.dylib.

Thanks Flash3001!

Flash3001 commented 5 years ago

What script are you running? Please try this one: https://github.com/Flash3001/ipa-packager/blob/master/package_ipa_default.sh

mingxli commented 5 years ago

Perfect! I'll give this one a try. Thanks a lot Flash3001!!!

mingxli commented 5 years ago

Awesome!!! Everything is working! Thanks again Flash3001. Regarding the "Invalid Swift Support" email, that was my error. I was using an older version of the package_ipa_default.sh. I should have read through the documents more carefully. Anyway, I really really appreciate your help.

Much Thanks!

cstarner commented 5 years ago

Just a heads up, with the new updates to Xcode, the Swift library paths have changed. To fix this, you can use the old script, but replace SOURCE="${DEVELOPER_DIR}/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos/${SWIFT_LIB}" with SOURCE="${DEVELOPER_DIR}/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift-5.0/iphoneos/${SWIFT_LIB}".

Flash3001 commented 5 years ago

@cstarner Thanks for that. I will update the available script at https://github.com/Flash3001/ipa-packager