Re: creating a windows exe program [message #69779] |
Sat, 13 February 2010 08:06  |
penteado
Messages: 866 Registered: February 2018
|
Senior Member Administrator |
|
|
On Feb 12, 8:06 pm, nata <bernat.puigdomen...@gmail.com> wrote:
> I'm using IDL7 and the bin files collected by pp don't work if I run
> the make_rt.
> I suppose that the reason is the incompatibility between the bin files
> (version 7.1) and the sav file and the make_rt command that comes from
> my version 7.0
I do not think that is the problem. What exactly do you mean by "don't
work"? Which platform are you using, and which platform are you
building for? What exactly is the make_rt command you are using? Does
a plain (for the native platform, without using the external bin
directories) call to make_rt work?
|
|
|
Re: creating a windows exe program [message #69780 is a reply to message #69779] |
Sat, 13 February 2010 08:03   |
penteado
Messages: 866 Registered: February 2018
|
Senior Member Administrator |
|
|
On Feb 12, 6:41 pm, nata <bernat.puigdomen...@gmail.com> wrote:
> I have 2 more question:
> 1) All the .bin files that I'll find in the idl71_rt.tar.gz file and
> all that you explained in this old post, will it works with IDL 7.0?
I expect it to work, since make_rt just copies files and makes start
scripts, and it can take external bin directories and manifest files
(idldir and manifest keywords).
>
> 2) Another thing is, if I build a cross-platform IDL application, it
> will take a lot of space?. I mean, if the content of the
> idl71_rt.tar.gz is more than 500Mb it means that the final compiled
> program will have this kind of size?
That file is large because has the bin directories of 7 different
versions: Win 32 and 64, Linux 32 and 64, and Mac PPC, Intel 32 and
Intel 64. Additionally, not all its contents is used on every
distribution produced, and some control over it can be don with
make_rt's keywords.
The smallest sizes of the resulting directories I have seen are
50-80MB, depending on the platform. But even so, they include many
files that may be erased if the application does not use that
particular feature (such as help, maps, itools, and bridges).
|
|
|
|
|
Re: creating a windows exe program [message #69786 is a reply to message #69785] |
Fri, 12 February 2010 12:01   |
Michael Galloy
Messages: 1114 Registered: April 2006
|
Senior Member |
|
|
On 2/12/10 9:14 AM, pp wrote:
> On Feb 12, 1:48 pm, nata<bernat.puigdomen...@gmail.com> wrote:
>> Hi guys,
>>
>> Is it possible to create an IDL exe program for Windows ?
>> I think the answer is NO but I just want to be sure. Until now, what
>> am I doing is create a simple SAV file with all the content of my
>> program and if somebody wants to use it, the installation of the IDL
>> virtual machine is required.
>> I don't know if there is a way to add the virtual machine inside the
>> executable, change the icon of the sav program, etc. I know I can
>> create a batch file to execute the SAV file but I don't know how to do
>> that exactly.
>>
>> Suggestions or comments are appreciated.
>> nata
>
> See the help on make_rt.
Yes, you definitely can do it (and create launchers for other platforms
besides Windows too), see MAKE_RT as mentioned by pp.
And the best part (for me) is that you don't even have to have a Windows
machine to do it. Here's an article about creating such IDL
"uber-installations":
http://michaelgalloy.com/2009/08/04/make_rt-uber-installatio n.html
Mike
--
www.michaelgalloy.com
Research Mathematician
Tech-X Corporation
|
|
|
|
Re: creating a windows exe program [message #69845 is a reply to message #69779] |
Wed, 17 February 2010 07:30  |
natha
Messages: 482 Registered: October 2007
|
Senior Member |
|
|
> I do not think that is the problem. What exactly do you mean by "don't
> work"? Which platform are you using, and which platform are you
> building for? What exactly is the make_rt command you are using? Does
> a plain (for the native platform, without using the external bin
> directories) call to make_rt work?
Hi,
Sorry for the delay of my answer. I'm working on Linux Feedora 32 bits
and I'm trying to create an executable version of my program using
MAKE_RT in IDL 7.0.
I tried to create a Linux version using the default IDL_DIR. Something
like this:
make_rt, APP_NAME, APP_DIR, /VM, SAVEFILE='MYSAV.sav', /VM, /LIN32
No problems with that, the final version works well ! Then I tried to
use your bin files and I executed the same command specifying your
IDL_DIR.
make_rt, APP_NAME, APP_DIR, /VM, SAVEFILE='MYSAV.sav', /VM, /LIN32,
IDL_DIR='uber_installation/idl71_rt
When I use your IDL_DIR directory the final program version doesn't
work. And by "doesn't work" I mean that the program crashes with the
following error:
idl71_rt/bin/bin.linux.x86/idl: error while loading shared libraries:
libidl.so.7.1: cannot open shared object file: No such file or
directory
So I checked the log file and I found the following line:
Source file not found: uber_installation/idl71_rt/bin/bin.linux.x86/
libidl_ops.so.7.0
The problem is that my version of MAKE_RT tries to collect bins of the
version I'm using (7.0)... So I think I can't use your collection of
bins. I'll have to create mine or I'll have to update my version of
IDL.
Thanks anyway,
Bernat
|
|
|