I'm porting a program made in Windows to MacOSX.
al_show_native_message_box(NULL, "SIGABRT", "This line crashes the program", 0, 0, ALLEGRO_MESSAGEBOX_ERROR);
osx_dialog.m : _al_show_native_message_box
[box setInformativeText:[NSString stringWithUTF8String: al_cstr(fd->mb_text)]];
Although I had trouble configuring the project in Xcode, everything else appears to work just as it did under Windows (events, graphics, sounds, file i/o all work)
Do I need to rebuild Allegro?
I don't think it's valid to set the text parameter to NULL like you do (it's the 4th parameter).
Amazing all the bugs (with your own code) you find when you switch OS 
I swear that is the same code I used in Windows and it worked exactly how I thought it would :/
Under OSX:
al_show_native_message_box(NULL, "Title", "Heading", "Text", 0, ALLEGRO_MESSAGEBOX_ERROR);
produces:
{"name":"Screen_Shot_2015_05_03_at_11_52_52_PM.png","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/3\/5\/357a2398a433e0aaba66f930d41b82f0.png","w":433,"h":165,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/3\/5\/357a2398a433e0aaba66f930d41b82f0"}
What happens to the heading?
OSX only has those two fields to customize... I suppose Allegro should do something smarter than just silently dropping it though.