Delphi XE5(U2) Firemonkey application crashes at startup on OSX on new mac [Edit]

Hello,

I'm trying to deploy my first application on a mac platform. I have successfully built the application on my dev mac and run it through PAServer and now I would like to deploy it on a different MacOS.

I tried to drag and drop the application .app file into the application folder of the new Mac. The app shows up but as soon as I start it, I got a message telling me that it stopped unexpectedly.

I'm really lost here: With windows, I'd have no problem finding out what is wrong but, with a Mac, I haven't got a clue what I did wrong. The application doesn't do anything fancy: loads a bunch of XML files and uses the standard controls for displaying its UI.

What is the "normal" procedure for deploying a FireMonkey application on a Mac without XCode and PAServer installed ? If there some some of trace logging system that can tell me what part of the application blew up ?

Thanks

Edited by: Stephane Grobety on Jan 8, 2014 5:32 AM
0
Stephane
1/8/2014 1:32:58 PM
📁 embarcadero.delphi.firemonkey
📃 4901 articles.
⭐ 4 followers.

💬 5 Replies
👁️‍🗨️ 2884 Views

> {quote:title=Stephane Grobety wrote:}{quote}
>  If there some some of trace logging system that can tell me what part of the application blew up ?
Crash reports are written to ~/Library/Logs/DiagnosticReports/     (~ stands for you home folder)
These contain a stack trace of the crash. You can find these addresses in the map file of your application if you enable that in the linker options. A few days ago I posted a tool that makes this a little bit easier to thirdpartytools.general.
0
Sebastian
1/8/2014 1:55:53 PM
> {quote:title=Sebastian Zierer wrote:}{quote}
> > {quote:title=Stephane Grobety wrote:}{quote}
> >  If there some some of trace logging system that can tell me what part of the application blew up ?
> Crash reports are written to ~/Library/Logs/DiagnosticReports/     (~ stands for you home folder)
> These contain a stack trace of the crash. You can find these addresses in the map file of your application if you enable that in the linker options. A few days ago I posted a tool that makes this a little bit easier to thirdpartytools.general.

Thank you for your answer. I'll look into the target mac /Library/Logs/DiagnosticReports/ folder. On my test mac, however, that folder is empty.

Is there anything special that needs to be done to install a FireMonkey application on a Mac ?
0
Stephane
1/8/2014 2:31:13 PM
> {quote:title=Stephane Grobety wrote:}{quote}
> Thank you for your answer. I'll look into the target mac /Library/Logs/DiagnosticReports/ folder. On my test mac, however, that folder is empty.
If you looked at /Library/Logs/DiagnosticReports/ then that is the wrong folder. It must be ~/Library/Logs/DiagnosticReports/. You can also run "Console" to view the log files.

> Is there anything special that needs to be done to install a FireMonkey application on a Mac ?
I use diskutil to put the .app package from the paserver scratch-dir into a dmg image. Then this dmg image can be transferred to another mac. If you distribute the dmg over the internet, it is a good idea to sign the .app package before putting it into the dmg image.
0
Sebastian
1/8/2014 4:16:51 PM
Thank you again for answering.

> {quote:title=Sebastian Zierer wrote:}{quote}
> > {quote:title=Stephane Grobety wrote:}{quote}
> > Thank you for your answer. I'll look into the target mac /Library/Logs/DiagnosticReports/ folder. On my test mac, however, that folder is empty.
> If you looked at /Library/Logs/DiagnosticReports/ then that is the wrong folder. It must be ~/Library/Logs/DiagnosticReports/. You can also run "Console" to view the log files.

Ah, thank you. For some reason, the forum web site removed the tilde from your original message, hence the confusion. I found the dump location on my test machine, I'll try to grab them from the problematic system tomorrow.


> > Is there anything special that needs to be done to install a FireMonkey application on a Mac ?
> I use diskutil to put the .app package from the paserver scratch-dir into a dmg image. Then this dmg image can be transferred to another mac. If you distribute the dmg over the internet, it is a good idea to sign the .app package before putting it into the dmg image.

My app just reads XML files from the user's document folder (I'm using TPath.GetDocumentsPath to get this) and doesn't need anything else (as far as I know). So far, it will only be deployed at a single location and distributed by hand. I deployed it by copying the content of the scratch folder (the .app file) and putting it on a USB drive. On the target system I drag-and-dropped it into the "application" folder. Is there another step that must be taken ?
0
Stephane
1/8/2014 5:01:07 PM
Does it have to do with security issues? You cant normally run an app on OSX unless it is signed with developer certificate.

When you run it through PAServer, it bypasses this so it will run without signing.
0
Douglas
1/12/2014 1:52:21 AM