The other day I sent Garry a version of an app I am writing.
Currently it is macOS only, compiled with 2019r1.1 and 64bit
When he attempts to run it (under Catalina) he gets an error
RAPID needs to be updated.
The developer of this app needs to update it to work
with this version of macOS. Contact the developer for
more information.
it does use these declares
Declare Function NSClassFromString Lib "Cocoa" (s As CFStringRef) As Ptr
Declare Function NSSelectorFromString Lib "Cocoa" (s As CFStringRef) As Ptr
Declare Sub setAllowsAutomaticWindowTabbing Lib "Cocoa" selector "setAllowsAutomaticWindowTabbing:" (cls As Ptr, ena As Boolean)
Declare Function respondsToSelector Lib "Cocoa" selector "respondsToSelector:" (p As Ptr, sel As Ptr) As Boolean
Declare Function undoManager Lib "Cocoa" selector "undoManager" (obj_id As Integer) As Ptr
Dim pnt1 As Ptr = undoManager(Self.Handle)
Declare Function canUndo Lib "Cocoa" selector "canUndo" (receiver As Ptr) As Boolean
Declare Sub CGContextSetLineDash Lib "Cocoa" ( context As Integer, phase As Single, lengths As Ptr, count As UInt32)
Declare Function NSClassFromString Lib "Cocoa" (classname As CFStringRef) As ptr
Declare Function dragCopyCursor Lib "Cocoa" selector "dragCopyCursor" (cls As ptr) As ptr
Declare Sub push Lib "Cocoa" selector "push" (obj As ptr)
Declare Function NSClassFromString Lib "Cocoa" (classname As CFStringRef) As ptr
Declare Function dragCopyCursor Lib "Cocoa" selector "dragCopyCursor" (cls As ptr) As ptr
Declare Sub pop Lib "Cocoa" selector "pop" (obj As ptr)
Declare Function objc_getClass Lib "libobjc.dylib" ( name As CString ) As ptr
Declare Function sharedWorkspace Lib "AppKit" selector "sharedWorkspace" ( obj As ptr ) As ptr
Declare Function selectFile Lib "AppKit" selector "selectFile:inFileViewerRootedAtPath:" ( obj As ptr, fPath As CFStringRef, rootFullPath As CFStringRef ) As Boolean
Declare Sub setTitleWithRepresentedFilename Lib "Cocoa" Selector "setTitleWithRepresentedFilename:" (NSWindow As Ptr, filePath As CFStringRef)
Declare Function NSFullUserName Lib "Cocoa" As CFStringRef
Declare Sub CGContextSetLineDash Lib "Cocoa" ( context As Integer, phase As Single, lengths As Ptr, count As UInt32)
This is just a list, and not all the code the calls or uses them
Problem is… I don’t have “more information”. it runs perfectly in Mojave
a simple test of the app in the bundle would be to run the FILE command in terminal
something like file /Applications/Contacts.app/Contents/MacOS/Contacts
note this uses the EXE way down inside the bundle NOT the bundle itself
you want an answer that says
yeah I had THOUGHT it was set to 64bit (at least that is what I saw when I check yesterday)… but it wasn’t, which is strange because I have no need to run 32bit stuff anymore… Anyways I recompiled and sent Garry a new copy,
I’m seeing all sorts of weird messages on Catalina with your app @DaveS. The updated build you sent me will now launch (if I go to the macOS Security settings and allow it as you are an unsigned developer) but then I got this error message which I’ve never seen before…
I agree… If Xojo wants to be a “player” in the game, then it needs to provide the “soup to nuts” process… a compile should include all the signing, hardening, notorizing (sorry Sam)
Otherwise its only 1/2 what is needed… its like buying a car, and having to go to a 3rd party to get the gas tank
Xojo 100% need to fold in what Sam Rowlands is doing with App Wrapper. The IDE is just not good enough in its current state if you want to distribute your apps to other users on macOS.
Yes
But just like Xojo builds a default project with an App instance, Window and MenuBar when you start a project they could just as well add a new Build Automation item under the macOS target with that script already in it