Mac Catalyst version of working iOS App gets dyld crash - macos-catalina

I need to run a version of an existing iOS app in MacOS (10.15.7).
The app uses PencilKit and runs well in iOS 14. Compiling with Xcode 12.3
Trying to run in Catalina, the App crashes during dynamic framework loading before arriving at the app's AppDelegate.
the debugger says:
dyld: Symbol not found: _$s9PencilKit8PKStrokeVMn
Referenced from: /Users/.... (which was built for Mac OS X 14.0)
Expected in: /System/iOSSupport/usr/lib/swift/libswiftPencilKit.dylib
in /Users.... Sketch.app/Contents/MacOS/Hieroglyph Sketch
the contents of $arg1 = 6
Is this a clue that Catalyst now requires Big Sur?
Are there and funky Project or Target Settings required for MacOS builds not in iOS?

PencilKit is not supported in Catalina, despite what the docs say. It was enabled for Catalyst apps in Big Sur.
https://twitter.com/stroughtonsmith/status/1163514723679252480?s=21

Related

Why can't I run a QT project on an IOS emulator?

I am trying to make an iOS app on my macbook with the M1 chip. Downloaded Qt, installed, created a project, click run on the emulator and here:
error screen
XCode had previously run a test project and everything works fine on the emulator there, and a ton of errors come out on Qt. As I understand it, Qt doesn't see any necessary files, but I don't even understand where to get them from. I want to note that if you run the application not on the emulator, but on the Mac itself, then everything works fine.
I'm sorry for my English, I used a translator.
What version of Qt are you using ? What about xCode ?
You have to download just only Qt 5.5.0 for Android and iOS (Mac, 1.7 GB) file from https://www.qt.io/download-open-source/ and install it.
When it is completely installed,
Set the environment for android development. Open up the terminal and execute following commands
export ANDROID_HOME=/Users/graphics/Desktop/Android/AndroidSDK
export PATH=$PATH:$ANDROID_HOME/bin
Set your android configuration. Just give these paths into the Qt Creator
JDK Location:
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home
Android SDK Location:
/Users/graphics/Desktop/Android/AndroidSDK
Android NDK Location:
/Users/graphics/Desktop/Android/android-ndk-r10e
Ant executable:
/Users/graphics/Desktop/Android/apache-ant-1.9.5/bin/ant
Allow Automatically create kits for Android tool chains. To get your JDK location on Mac enter in terminal
/usr/libexec/java_home
Now create your virtual device as what you need and everything will be fine. No worries then. You can run your apps on both android emulator and iPhone simulator.
Notice: give path of AndroidSDK, Android NDK, Ant executable location according to yours.
One more thing that i did, previously installed Xcode 6.3

iOS kit not detected on Qt (macOS)

I am currently trying to port an android application on iOS. The application was developped on Linux. But I can't manage to use Qt on macOs for iOS developpement.
I followed those (rather unclear) instructions : http://doc.qt.io/qt-5/ios-support.html
First, I installed successfully XCode and I managed to deploy a dummy app on my iPhone. Then, I installed Qt and opened the ".pro" project file.
But the only kit I can use is "Desktop Qt 5.4.1 clang 64 bit". The kits for iOS don't seem to be detected.
Did I do something wrong ? Am I missing something ?
EDIT:
When I launch the ".pro", I got this error :
Project ERROR: Xcode not set up properly. You may need to confirm the license agreement by running /usr/bin/xcodebuild.
Unfortunately, it is NOT related to this well known issue (Qt Creator - Project ERROR: Xcode not set up properly. You may need to confirm the license agreement by running /usr/bin/xcodebuild)
When I run the command :
/usr/bin/xcodebuild
I get this error:
xcodebuild: error: The directory /Users/<UserName> does not contain an Xcode project
Okay I managed to solve my problem by re installing Qt with version 5.8 (instead of 5.9.1).
But I am not sure this is what was causing the issue though. In deed, I realized I installed Qt prior to configuring XCode the first time(with my Developer Account).

"Parse issue: Unknown type name" error after upgrading XCode

After I upgraded my Mac OS X to Mountain Lion (all the way from Snow Leopard) and XCode 5 (all the way from XCode 3.2) I can no longer build a C++ project that I used to build in XCode successfully. I get loads of errors now all saying "Parse issue: Unknown type name *" for different objects. I tried an older version of XCode (4.6) and set the SDK to Mac OS X 10.7. This problem was solved but not using the latest version of XCode caused other problems.
To be specific, the errors (at least the first ones) seem to be related to Carbon graphic library. I don't know if that matters. I know that Carbon is somehow outdated but an official release of the application I'm extending runs on Mac OS 10.8 so I wonder why I can't build the code on 10.8.
What can be the cause of this error? The code is big and is not written by me so changing it is not an option. I really need to build it on XCode 5 or else I should downgrade my OS!
Several things that have been long deprecated in Carbon were finally removed in the Mac OS X 10.7 SDK.
You will need the Mac OS X 10.6 SDK to build your project. Apple stopped automatically including older SDKs with newer versions of Xcode but you can download older Xcode versions (from Apple's Developer site) and one of them...maybe Xcode 4.3 or so...will have the 10.6 SDK.
In order to use an older SDK with a newer Xcode, you must install it manually. The correct location is:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/
Also note, any upgrade to Xcode (such as an update downloaded from the App Store) will obliterate your manually-installed SDKs. I recommend archiving the ones you need somewhere else so you can replace them as needed.

firebreath plugin could not be loaded on mac os 10.7

Question
I have got a browser plugin created from firebreath worked fine on mac osx 10.8. But I got an "could not load UploaderPlugin(the name of my plugin)" error from Chrome on mac osx 10.7.
Several external libraries are included in my plugin project. After several hours of work I found that when I removed the libcurl library from my project the error went away, and the same error appears each time I try to include the libcurl library.
So it is quite clear that the error has something to do with the libcurl library. Since libcurl relies on openssl and zlib. I compiled the three libraries from source code again but the same error remains unresolved.
error message from the console
13-10-10 下午12:56:33.500 Google Chrome Helper EH: Error loading /Users/admin/Library/Internet Plug-Ins/npUploaderPlugin.plugin/Contents/MacOS/npUploaderPlugin: dlopen(/Users/admin/Library/Internet Plug-Ins/npUploaderPlugin.plugin/Contents/MacOS/npUploaderPlugin, 262): Symbol not found: _CAST_ecb_encrypt
Referenced from: /Users/admin/Library/Internet Plug-Ins/npUploaderPlugin.plugin/Contents/MacOS/npUploaderPlugin
Expected in: /usr/lib/libSystem.B.dylib
in /Users/admin/Library/Internet Plug-Ins/npUploaderPlugin.plugin/Contents/MacOS/npUploaderPlugin
13-10-10 下午12:56:33.501 [0x0-0x2a82a8].com.google.Chrome: [10071:2819:1010/125633:ERROR:webplugin_delegate_proxy.cc(390)] PluginMsg_Init returned false
13-10-10 下午12:56:33.501 [0x0-0x2a82a8].com.google.Chrome: [10071:2819:1010/125633:ERROR:webplugin_impl.cc(258)] Couldn't initialize plug-in
Deciding from the error msg I can see that the main problem is that the symbol _CAST_ecb_encrypt could not be found. I googled it and got nothing concerned.
envrionment
mac os x 10.8 + chrome 28.0.1500.71 (works fine)
mac os x 10.7 + chrome 29.0.1547.22 beta (got the error msg)
firebreath version: 1.7
libcurl version: 7.26.0
openssl version: 1.0.1c
zlib version: 1.2.7
c-ares version: 1.10.0
Any kind of advice would be appreciated. And plz do not hesitate to inform me if you need more detailed information.
It actually may or may not be directly related to libcurl; it could be something that curl is causing to be linked in because of how you're linking it. My first guess would be that you need to set your deployment target to 10.7; if you build on 10.8, by default the target and SDK you will use are the 10.8 target and 10.8 sdk. usually you can safely use the 10.8 sdk to build for 10.7, but you may need to set the deployment target.
You can do that by adding -D CMAKE_OSX_DEPLOYMENT_TARGET=10.8 to your prep script:
../firebreath/prepmac.sh ./projectDir ./buildDir -D CMAKE_OSX_DEPLOYMENT_TARGET=10.8

How to fix problem with version mismatch of iPhone 4.3.4 and IOS SDK

I upgraded my iPhone to 4.3.4 (8K2) and I can no longer build my app.
In the organizer, I get the following error:
The version of iOS on “Jeff Bonta’s iPhone” does not match any of the versions of iOS supported for development with this installation of the iOS SDK. Please restore the device to a version of the OS listed below, or update to the latest version of the iOS SDK; which is available here.
OS Installed on Jeff Bonta’s iPhone
4.3.4 (8K2)
Xcode Supported iOS Versions
4.3.4 (8K2)
4.3.3 (8J2)
4.3.2 (8H7)
4.3.1 (8G4)
So, it acknowledges that I have 4.3.4 installed on my iPhone and it says that Xcode supports 4.3.4, but it also says that the version on the iPhone does not match any of the versions supported for development with this SDK. Very confusing.
Before I rebooted my iPhone, I got errors in the debugger console:
iphone unable to load symbol file:
Other users have had this problem with version 4.2.1 and resolved it by:
Deleting the folder /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1/ and restarting Xcode.
I could not get this to work because I could not delete the folder .../4.3.4 (8K2). I figured out how to delete this folder, but not until after I rebooted my iPhone.
Any suggestions? I am completely stuck.
I had a similar issue, here was my work process.
Close XCode
Disconnect iPhone
Delete 4.2 - to the latest version folders (as
shown in the other post - If you cant do it through the GUI, go in through terminal and sudo delete it.)
Now I went to install Xcode again, but I use Lion now and it said "update xcode" when I went to install.
Install the new updates and open Xcode.
Plug in the iPhone and open Organiser (if it doesnt do it automatically)
Wait a minute
before it recognises the iPhone, it should then ask you to port the
files across.
Click on the project file in Xcode, and then set the
version to 4.3.4 (or 4.3.5 if you updated) manually, as its grayed out and doesn't recognise the device until you do.
Clean the project and then build.
Let me know how you get on :)
I have both Xcode 3.2 and Xcode 4 installed. 3.2 gave me the same error on an iOS5 iPad. I deleted the folder with 'sudo rm -rf /Developer/blah/balh/' and then opened Xcode 4 with the iPad connected, Xcode 4 did some magic and a message 'Clean Manager succeed' appeared on the status bar. Closed 4, opened 3.2 and voila! There was my device ready again.
Hope this helps.