Compiling an executable from your compiled Rev Application.

LiveCode is the premier environment for creating multi-platform solutions for all major operating systems - Windows, Mac OS X, Linux, the Web, Server environments and Mobile platforms. Brand new to LiveCode? Welcome!

Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, robinmiller

Post Reply
davec
Posts: 30
Joined: Tue Dec 12, 2006 9:08 pm
Contact:

Compiling an executable from your compiled Rev Application.

Post by davec » Sat Aug 25, 2007 5:07 pm

Hi,

I think I already know the anwser to the following question, but I would welcome the views of more seasoned Rev developers.

Is it possible to compile Rev scripts outside of the IDE but within an application? From what I read in the Rev docs, the answer is a plain no.

My thinking is such that the principle application is a content editor and this then populates a new stack and a set of cards with the content. The stack is then compiled into a standalone executable. I need to use embedded SQLite for content searching so Rev Media is out of the equation.

Being that Rev is able to create empty stacks, cards and poplulate template stacks - saving them back out with another filename - all my requirements are there bar one.

I know there is the free player which I could distribute to end users, but this then requires an installation step. Also, my target users would be other developers who might not wish to have the extra responsibility of adding the Rev player into their installers. As I write this I have not had any experience using the player - but I will download it to try out.

I'm not asking to have the IDE tools distributed BTW, just converting the stack into an executable for the required platform.

What I'm really asking for is a seprate Rev compiler which can be called outside of a another app and passed a stack as an argument.

FourthWorld
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 10043
Joined: Sat Apr 08, 2006 7:05 am
Contact:

Post by FourthWorld » Sat Aug 25, 2007 6:36 pm

Must it be a "compiler" specifically?

Why couldn't you just make your own custom player app standalone for your files?
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn

davec
Posts: 30
Joined: Tue Dec 12, 2006 9:08 pm
Contact:

Post by davec » Sat Aug 25, 2007 7:25 pm

Hi Richard,

Not being familiar with the player per se, I don't know how to make a custom player app. That is something I will have to research. My assumption is that the player would have to be a separate install on the end user's machine and the .rev file would run when called, or clicked. It's this situation that, ideally, I'd like to avoid.

The thinking behind a compiled version is that it would not need any support files (players) and would integrate (be called from) other applications easier.

Kind Regards,

Dave.

Mark
Livecode Opensource Backer
Livecode Opensource Backer
Posts: 5150
Joined: Thu Feb 23, 2006 9:24 pm
Contact:

Post by Mark » Sat Aug 25, 2007 7:32 pm

Hi Davec,

Tell those other developers to buy a copy of Revolution. Make a stack that creates the files you want and builds the standalone inside Revolution. You can have the standalone built automatically, with a few tricks. You can offer your tool as a plugin to Revolution.

The altenative is to make RunRev a really good offer for a license that allows you to distribute software that can create standalones by itself.

Probably, since the above may be not what you want, you will want to have a distributable player that opens files of a custom format or stacks.

Maybe you should explain a little more about what you want exactly and, more importantly, why. If we have more info, we might be able to give you good advice.

Best,

Mark
The biggest LiveCode group on Facebook: https://www.facebook.com/groups/livecode.developers
The book "Programming LiveCode for the Real Beginner"! Get it here! http://tinyurl.com/book-livecode

davec
Posts: 30
Joined: Tue Dec 12, 2006 9:08 pm
Contact:

Post by davec » Sat Aug 25, 2007 7:57 pm

Hi Mark,
Mark wrote:Hi Davec,

Tell those other developers to buy a copy of Revolution. Make a stack that creates the files you want and builds the standalone inside Revolution. You can have the standalone built automatically, with a few tricks. You can offer your tool as a plugin to Revolution.
Ah, if only it was that simple Mark :D It's not an option really.
The altenative is to make RunRev a really good offer for a license that allows you to distribute software that can create standalones by itself.
This did cross my mind.
Probably, since the above may be not what you want, you will want to have a distributable player that opens files of a custom format or stacks.
Yes this is indeed an option, but one I'd prefer not to choose (See previous post).
Maybe you should explain a little more about what you want exactly and, more importantly, why. If we have more info, we might be able to give you good advice.


The idea centers around documentation authoring that can be used to build help systems. Hence the need to produce an authoring app that can produce runnable rev stacks which can be called by other development languages via a simple shell or run call. Alternatively, if I can't produce executables as needed, I will build the application in-house and offer it as a service for developers.

Kind Regards,
Dave.

Mark
Livecode Opensource Backer
Livecode Opensource Backer
Posts: 5150
Joined: Thu Feb 23, 2006 9:24 pm
Contact:

Post by Mark » Sat Aug 25, 2007 8:22 pm

Hi Davec,

Why don't you create a good help file authoring system that produces files compatible with the help systems built into Windows and Mac OS X? It would be a nice shareware tool.

Best,

Mark
The biggest LiveCode group on Facebook: https://www.facebook.com/groups/livecode.developers
The book "Programming LiveCode for the Real Beginner"! Get it here! http://tinyurl.com/book-livecode

davec
Posts: 30
Joined: Tue Dec 12, 2006 9:08 pm
Contact:

Post by davec » Sat Aug 25, 2007 8:37 pm

Hi Mark

Thanks for your comments (Richard too).

That was an option I had in mind too. To produce HTML for Apple Help viewer and maybe CHM files. By playing to Revs strengths as a presentation tool, I could see how one could produce multimedia help systems that have both static and interactive, tutorial type, content in the one system.

Much food for thought. Thank you.

Kind Regards,
Dave.

FourthWorld
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 10043
Joined: Sat Apr 08, 2006 7:05 am
Contact:

Post by FourthWorld » Sat Aug 25, 2007 11:33 pm

If I read this correctly, the other contributors on this project are laying out content, but not writing script, correct?

If so, they don't need a "compiler", since there's no code to compile.

Just as traditional applications can read and write documents, Rev-based applications can open and save stack files. Opening any number of stack files doesn't require that they each be a standalone; on the contrary, one standalone could be used to open them all. This not only solves the problem of other building standalones, but keeps each stack file small (no need to attach the 2MB engine to it), and keeps the workflow flexible since changes can be made to these content modules without having to recompile the standalone.

The system described in this article is probably overkill for what you need, but if nothing else illustrates how we were able to use standalones and stack files in a system which allowed a couple dozen contributors build a multimedia collection of medical reference materials:
http://www.runrev.com/newsletter/april/ ... etter2.php

Hopefully something in there will inspire a solution for your project.
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn

davec
Posts: 30
Joined: Tue Dec 12, 2006 9:08 pm
Contact:

Post by davec » Sun Aug 26, 2007 8:58 am

Hi Richard,

Thanks for your input.
FourthWorld wrote:If I read this correctly, the other contributors on this project are laying out content, but not writing script, correct?
Yes, that is correct but interactive navigation and content presentation scripts would need to be generated from the content editor and saved with the generated stack. I'm unclear myself at this early stage how exactly the editor will operate, but it should;

a/ Allow someone to quickly produce help/tutorial material.
b/ Content would include user written text, movies, and web pages. (Online or supplied locally)
b/ Use templates to specify layout.
c/ Use stylesheets to specify look.
d/ Allow transition effects between content.

Most of these stem from an in-house requirement to allow me to write technical documentation and end user help. I do not want to produce each one by hand from scratch so this is how the idea of a content generator formed. Hence the "ahah" moment that it may also be valuable to others too. I do realize I'm reinventing the wheel as there are help authoring tools (HATs) on the market (most that I've seen are for the Windows platform only rather then the Mac, my platform of choice) and I will have to look into these to see if any one meets the features I need to produce what I'm being asked for. Besides, I would like to use Rev!
If so, they don't need a "compiler", since there's no code to compile.
Well, in my original thoughts a compiler would be needed because I wanted the system to produce a complete standalone in it's own right directly from the content editor.

However, having absorbed what has been written here, all I need to do is produce a simple compiled stack which opens the content generated stacks(s). And as you mention this is standard practice in Rev. In effect I would provide my own player, or in this case, "help runner". This would seem to make it easier for a developer to package the proposed help system into an installer. Thank you for pointing out that there is simpler way to do things - I like simple :D

The medical application you link to is indeed impressive.

Kind Regards,
Dave.

davec
Posts: 30
Joined: Tue Dec 12, 2006 9:08 pm
Contact:

Post by davec » Sun Aug 26, 2007 9:44 am

There is nothing new under the sun...

I found reference to an application called "Quickhelp" which, on paper, seems to have implemented the same sort of system what I have been discussing here.

See http://www.excelsoftware.com/

I get the impression that it's written in Realbasic (boo.. :wink:). Whilst it appears to do be able to fulfill most of the requirements, I think I would still need Rev to make custom, multimedia, help and tutorial systems.

Kind Regards,
Dave.

Post Reply