Page 1 of 1

Mountain Lion compile only for Mountain Lion?

Posted: Mon Jul 30, 2012 8:04 am
by jesperbrannmark
Hi.
I just compiled my program and distributed it. (using Mountain lion since a few days).
Now it seem noone with lion (or older) can use it.
Is there some setting to allow backward compatibility?

Re: Mountain Lion compile only for Mountain Lion?

Posted: Mon Jul 30, 2012 8:14 am
by TI-994A
jesperbrannmark wrote:Hi.
I just compiled my program and distributed it. (using Mountain lion since a few days).
Now it seem noone with lion (or older) can use it.
Is there some setting to allow backward compatibility?
In their relentless pursuit of pure Cocoa, more and more Carbon APIs are being deprecated. There should still be some workarounds, but this shouldn't come as a surprise.

Re: Mountain Lion compile only for Mountain Lion?

Posted: Mon Jul 30, 2012 8:48 am
by wilbert
TI-994A wrote:In their relentless pursuit of pure Cocoa, more and more Carbon APIs are being deprecated.
Cocoa has been around since 2001. It's quite logical that they want to get rid of some old deprecated APIs.
But it doesn't make sense if something compiled with PureBasic on Mountain Lion doesn't work on Lion.
The current PureBasic version doesn't output anything different. All I can think of is that something has changed in NASM.

Re: Mountain Lion compile only for Mountain Lion?

Posted: Mon Jul 30, 2012 9:10 am
by jesperbrannmark
Yes, this came as a unpleasant surprise to me too. I have a Mac with Lion still (or I have to borrow my girlfriends), so I can recompile. But I am using Pb 4.61 on both of them. On this one (mountain lion) Xcode is newer, because old xcode wouldnt run on mountain lion therefor I had to upgrade.
Thats probably what I need to do, but someone should have a warning here.
It could be something in my code that compiles this way, so it might not apply to all sources.

but ....
Compiled with mountain lion -> will only run on mountain lion or newer
compiled with older -> will run on all..

Re: Mountain Lion compile only for Mountain Lion?

Posted: Mon Jul 30, 2012 9:21 am
by wilbert
You could try to use NASM from their website instead of the Apple compiled version.
http://www.nasm.us/pub/nasm/releasebuil ... macosx.zip
Maybe that makes a difference :?

Re: Mountain Lion compile only for Mountain Lion?

Posted: Mon Jul 30, 2012 9:48 am
by TI-994A
wilbert wrote:Cocoa has been around since 2001. It's quite logical that they want to get rid of some old deprecated APIs.
But it doesn't make sense if something compiled with PureBasic on Mountain Lion doesn't work on Lion.
The current PureBasic version doesn't output anything different. All I can think of is that something has changed in NASM.
Hi wilbert. You've got a good point. I was also thinking that it could be a Gatekeeper code signing issue, but still, that should only affect Mountain Lion.
jesperbrannmark wrote:Compiled with mountain lion -> will only run on mountain lion or newer
compiled with older -> will run on all..
Hi jesperbrannmark. Have you confirmed this? So, PureBasic runs on Mountain Lion, and PureBasic apps can compile and run on it? And PureBasic apps compiled on Lion run on Mountain Lion as well?

Re: Mountain Lion compile only for Mountain Lion?

Posted: Mon Jul 30, 2012 9:58 am
by jamirokwai
Hi there,

just compiled two of my Apps on Mountain Lion, xCode 4.4, PB 4.61. Then I tested on Snow Leopard, which works as expected. Can't try on Lion, though...
Which functions do not work on your Lion-Installation?

Re: Mountain Lion compile only for Mountain Lion?

Posted: Mon Jul 30, 2012 11:21 am
by jesperbrannmark
I tried on the older mac os mac... i got a crash first thing.
Then i tried putting purebasic (4.61) on that and compile and put it in a DMG file.
Now when i run the software on the Mountain Lion Mac I get the message:
“clinicbuddy” can’t be opened because it is from an unidentified developer.
Your security preferences allow installation of only apps from the Mac App Store and identified developers.
(i have not signed the code)

If I put the application (compiled in older mac os) over and then make the DMG file on Mountain Lion it work for everyone.
Its not a general PB issue, but I have a need a drink...

Re: Mountain Lion compile only for Mountain Lion?

Posted: Mon Jul 30, 2012 11:26 am
by Polo
Not sure I understand it all: do our ML compiled apps run on older OS? They should, at least til snow leopard.
Now, Any of our apps will display the gatekeeper message and won't run on ML, unless gatekeeper is turned off. Haven't tried the signing process yet! :)

Re: Mountain Lion compile only for Mountain Lion?

Posted: Mon Jul 30, 2012 11:35 am
by TI-994A
jesperbrannmark wrote:I tried on the older mac os mac... i got a crash first thing.
Then i tried putting purebasic (4.61) on that and compile and put it in a DMG file.
Now when i run the software on the Mountain Lion Mac I get the message:
“clinicbuddy” can’t be opened because it is from an unidentified developer.
Your security preferences allow installation of only apps from the Mac App Store and identified developers.
(i have not signed the code)

If I put the application (compiled in older mac os) over and then make the DMG file on Mountain Lion it work for everyone.
Its not a general PB issue, but I have a need a drink...
Hello again jesperbrannmark. The good news is that PureBasic works on Mountain Lion; and jamirokwai was able to run his Mountain-Lion compiled app on Snow Leopard as well.

Still no idea why your app is crashing on the older mac os; but like Polo said, if Gatekeeper is turned off, you should be able to run your app on Mountain Lion even without signing it.

Re: Mountain Lion compile only for Mountain Lion?

Posted: Mon Jul 30, 2012 4:57 pm
by spacebuddy
In Mountain Lion you can right click on the Icon and select "Open" even
if GateKeeper is on and the program will run without the security warning.

------------------
http://www.xshld.com