standalone builder
Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, LCMark
-
- VIP Livecode Opensource Backer
- Posts: 3581
- Joined: Mon Jan 22, 2007 7:36 am
- Location: Berkeley, CA, US
- Contact:
standalone builder
This may more properly belong in the IDE contributors section, but since there's still no way to issue pull requests for the IDE...
Now that we can build 64-bit versions of the engine, when will we be able to deploy 64-bit standalones? The 32-bit/64-bit switch needs to be implemented in the standalone builder, and the various engine builds also need to be in the installer script.
Now that we can build 64-bit versions of the engine, when will we be able to deploy 64-bit standalones? The 32-bit/64-bit switch needs to be implemented in the standalone builder, and the various engine builds also need to be in the installer script.
PowerDebug http://powerdebug.ahsoftware.net
PowerTools http://www.ahsoftware.net/PowerTools/PowerTools.irev
PowerTools http://www.ahsoftware.net/PowerTools/PowerTools.irev
Re: standalone builder
It's a good question... does it work if you just put the 64 bit builds where the 32 bit ones were?
LiveCode User Group on Facebook : http://FaceBook.com/groups/LiveCodeUsers/
-
- VIP Livecode Opensource Backer
- Posts: 3581
- Joined: Mon Jan 22, 2007 7:36 am
- Location: Berkeley, CA, US
- Contact:
Re: standalone builder
Yeah, it does. But what's missing is the ability to specify 32-bit or 64-bit standalone targets.
PowerDebug http://powerdebug.ahsoftware.net
PowerTools http://www.ahsoftware.net/PowerTools/PowerTools.irev
PowerTools http://www.ahsoftware.net/PowerTools/PowerTools.irev
-
- VIP Livecode Opensource Backer
- Posts: 9867
- Joined: Sat Apr 08, 2006 7:05 am
- Location: Los Angeles
- Contact:
Re: standalone builder
It's 2013 - does anyone need 32-bit?mwieder wrote:Yeah, it does. But what's missing is the ability to specify 32-bit or 64-bit standalone targets.
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn
-
- VIP Livecode Opensource Backer
- Posts: 3581
- Joined: Mon Jan 22, 2007 7:36 am
- Location: Berkeley, CA, US
- Contact:
Re: standalone builder
Yes, there are still 32-bit systems around that won't be able to run the 64-bit binaries and won't have the proper linked libraries.
OSX is a 64-bit system but 32-bit by default, and almost all OSX applications are 32-bit binaries.
I'd support 64-bit being the default with an option to backpedal to 32-bit binaries, but I do think both are necessary.
OSX is a 64-bit system but 32-bit by default, and almost all OSX applications are 32-bit binaries.
I'd support 64-bit being the default with an option to backpedal to 32-bit binaries, but I do think both are necessary.
PowerDebug http://powerdebug.ahsoftware.net
PowerTools http://www.ahsoftware.net/PowerTools/PowerTools.irev
PowerTools http://www.ahsoftware.net/PowerTools/PowerTools.irev
Re: standalone builder
Yes. Still being able to deploy 32Bit binaries is a must for quite a while still. You wouldn't believe how many government / Uni institutions still run 32 Bit versions of Linux here in germany.
Re: standalone builder
Well it's good to know the modifications I made to the deploy command for 64-bit ELF actually sound like they work
In regards to the other changes needed, we've not had a chance yet to integrate 64-bit linux builds into our build system - however, I think the folder structure is ready for it (the Linux runtime folder is split into 32-bit/64-bit parts), its just the option needs to be added to the S/B to use 64-bit engines if asked for and present.
In regards to the other changes needed, we've not had a chance yet to integrate 64-bit linux builds into our build system - however, I think the folder structure is ready for it (the Linux runtime folder is split into 32-bit/64-bit parts), its just the option needs to be added to the S/B to use 64-bit engines if asked for and present.
Re: standalone builder
I've just done some work on this - in theory if you have a Runtime/Linux/x86-64 folder in your ide with the appropriately named components (same as x86-32), a Linux x64 checkbox should appear on the Linux pane of the standalone settings, and the S/B should pick up components from there if it is checked.
[ These changes will first appear in 6.1.3 / 6.5 ].
[ These changes will first appear in 6.1.3 / 6.5 ].
-
- VIP Livecode Opensource Backer
- Posts: 9867
- Joined: Sat Apr 08, 2006 7:05 am
- Location: Los Angeles
- Contact:
Re: standalone builder
Thanks to all of you who made this happen. 64-bit compatibility is a must-have for many modern Linux distros, greatly simplifying what's needed to run apps made with LiveCode.
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn
-
- VIP Livecode Opensource Backer
- Posts: 3581
- Joined: Mon Jan 22, 2007 7:36 am
- Location: Berkeley, CA, US
- Contact:
Re: standalone builder
It's promising. Using LC 6.1.3-rc-2 I see the checkbox after
1. placing the 64-bit standalone engine in /opt/runrev/livecodecommunity-6.1.3-rc-2/Runtime/Linux/x86-64
2. renaming it "Standalone"
I can still build the 32-bit standalone without problems.
I can also build the 64-bit standalone. However, doing so builds both so that I end up with the following directory structure:
Note: the 64-bit build is much larger because of the debugging info, so don't worry about that part.
I realize that a checkbox could well be construed as *also* build a 64-bit version, but I rather expected that I would be building *only* a 64-bit application. I think I'd prefer checkboxes to select one or the other, or at least two checkboxes so that I don't end up building both every time.
1. placing the 64-bit standalone engine in /opt/runrev/livecodecommunity-6.1.3-rc-2/Runtime/Linux/x86-64
2. renaming it "Standalone"
I can still build the 32-bit standalone without problems.
I can also build the 64-bit standalone. However, doing so builds both so that I end up with the following directory structure:
Note: the 64-bit build is much larger because of the debugging info, so don't worry about that part.
I realize that a checkbox could well be construed as *also* build a 64-bit version, but I rather expected that I would be building *only* a 64-bit application. I think I'd prefer checkboxes to select one or the other, or at least two checkboxes so that I don't end up building both every time.
PowerDebug http://powerdebug.ahsoftware.net
PowerTools http://www.ahsoftware.net/PowerTools/PowerTools.irev
PowerTools http://www.ahsoftware.net/PowerTools/PowerTools.irev
Re: standalone builder
@mwieder: Wouldn't that be radio-buttons then?
This is the same convention that is used for Mac - where you can choose any (or none of) of Universal, x86 or ppc - and not really any different from being able to select multiple platforms. The motivation behind this is from the point of view of distribution - you can select multiple platforms and multiple architectures for each platform and all are built so you can upload.
Now, to be fair, what is missing is an optional to 'build active architecture only' (which Xcode has) - i.e. when testing / debugging etc., you probably only want to build one platform and one architecture in almost all cases.
This is the same convention that is used for Mac - where you can choose any (or none of) of Universal, x86 or ppc - and not really any different from being able to select multiple platforms. The motivation behind this is from the point of view of distribution - you can select multiple platforms and multiple architectures for each platform and all are built so you can upload.
Now, to be fair, what is missing is an optional to 'build active architecture only' (which Xcode has) - i.e. when testing / debugging etc., you probably only want to build one platform and one architecture in almost all cases.
Re: standalone builder
@mwieder: Sorry, I potentially completely missed the point of what you were saying... There should be two check-boxes on the standalones setting pane when a 64-bit linux engine is present - one for Linux (i.e. 32-bit) and one for Linux x86 (i.e. 64-bit).
If only one is checked, you should get only one build. If both are checked you should get both... It is entirely possible that something somewhere in the S/B is checking if the platform contains "linux" rather than is "linux" and thus resulting in the 32-bit one always being built...
If only one is checked, you should get only one build. If both are checked you should get both... It is entirely possible that something somewhere in the S/B is checking if the platform contains "linux" rather than is "linux" and thus resulting in the 32-bit one always being built...
-
- VIP Livecode Opensource Backer
- Posts: 7266
- Joined: Sat Apr 08, 2006 8:31 pm
- Location: Minneapolis MN
- Contact:
Re: standalone builder
Does this mean my text-based cgi scripts will work when my web host insists on moving me to a 64-bit Linux machine? It's going to happen pretty soon.
Jacqueline Landman Gay | jacque at hyperactivesw dot com
HyperActive Software | http://www.hyperactivesw.com
HyperActive Software | http://www.hyperactivesw.com
-
- VIP Livecode Opensource Backer
- Posts: 3581
- Joined: Mon Jan 22, 2007 7:36 am
- Location: Berkeley, CA, US
- Contact:
Re: standalone builder
@runrevmark: Well, "the platform" returns "linux" in either case, and "the systemversion" returns "Linux 3.5.0-17-generic".
...and two checkboxes would be good.
Update: I rebuilt it and looked again. There *are* two checkboxes. My eyes probably just glossed over the fact that the first checkbox was for the 32-bit build. That said, I think it would be better for the checkbox to be labeled "linux 32-bit" and "linux 64-bit". Or if necessary, "linux i386" and "linux x64".
...and two checkboxes would be good.
Update: I rebuilt it and looked again. There *are* two checkboxes. My eyes probably just glossed over the fact that the first checkbox was for the 32-bit build. That said, I think it would be better for the checkbox to be labeled "linux 32-bit" and "linux 64-bit". Or if necessary, "linux i386" and "linux x64".
PowerDebug http://powerdebug.ahsoftware.net
PowerTools http://www.ahsoftware.net/PowerTools/PowerTools.irev
PowerTools http://www.ahsoftware.net/PowerTools/PowerTools.irev
Re: standalone builder
Heh - I was being overly specific - the names of the platforms in the standalone builder is taken from the names of the checkboxes... In various places it was using 'is' and in some cases 'contains' to check for things to do - after I re-read your comment I thought it might be that something wasn't quite working correctly. (i.e. If the code that checks what platforms to build for was doing pPlatform contains "Linux", rather than is "Linux", then the 32-bit build might be built too even though it wasn't checked).Well, "the platform" returns "linux" in either case, and "the systemversion" returns "Linux 3.5.0-17-generic".
Phew - I'm not just imagining things... Indeed, easy enough to change the labelsThere *are* two checkboxes. My eyes probably just glossed over the fact that the first checkbox was for the 32-bit build. That said, I think it would be better for the checkbox to be labeled "linux 32-bit" and "linux 64-bit". Or if necessary, "linux i386" and "linux x64".