Re: [racket-users] Re: truly stand-alone Windows ".exe"s

2018-03-28 Thread Matthew Flatt
At Wed, 28 Mar 2018 00:54:01 -0700 (PDT), Alex Harsanyi wrote:
> 
> 
> On Tuesday, March 27, 2018 at 9:17:49 PM UTC+8, Matthew Flatt wrote:
> >
> > I should have bumped the version number when adding `--embed-dlls`, but 
> > I didn't. So, even though it's still version 6.90.0.23, `--embed-dlls` 
> > is in snapshots starting with the ones built on March 26. 
> >
> 
> I tried the new build, and indeed the '--embed-dlls` works.
> 
> However, with this Racket version I can no longer set a custom icon on the 
> generated executable, either using the --ico option to "raco exe" or the 
> 'ico key to the #:aux parameter for `create-embedding-executable`.

I'm not sure why that would be, and I haven't yet been able to
replicate that problem.

Just to make sure, it's not a caching issue with the File Explorer
view, right? When I rebuild an executable on Windows, I sometimes have
to move it to a different folder to see the icon update (and when I
move the executable back to its original location, it sometimes goes
back to its original icon).

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-users] Re: truly stand-alone Windows ".exe"s

2018-03-28 Thread Alex Harsanyi


On Tuesday, March 27, 2018 at 9:17:49 PM UTC+8, Matthew Flatt wrote:
>
> I should have bumped the version number when adding `--embed-dlls`, but 
> I didn't. So, even though it's still version 6.90.0.23, `--embed-dlls` 
> is in snapshots starting with the ones built on March 26. 
>

I tried the new build, and indeed the '--embed-dlls` works.

However, with this Racket version I can no longer set a custom icon on the 
generated executable, either using the --ico option to "raco exe" or the 
'ico key to the #:aux parameter for `create-embedding-executable`.

Best Regards,
Alex.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-users] Re: truly stand-alone Windows ".exe"s

2018-03-27 Thread Matthew Flatt
I should have bumped the version number when adding `--embed-dlls`, but
I didn't. So, even though it's still version 6.90.0.23, `--embed-dlls`
is in snapshots starting with the ones built on March 26.

At Tue, 27 Mar 2018 03:38:28 -0700 (PDT), Alex Harsanyi wrote:
> 
> I have version 6.90.0.23 installed from a few days ago, which appears to be 
> the latest version available at  http://pre.racket-lang.org/, and "raco 
> exe" does not accept the '--embed-dlls' option. Have these changes not been 
> released in a snapshot yet?
> 
> Best Regards,
> Alex.
> 
> On Monday, March 26, 2018 at 10:18:29 PM UTC+8, Matthew Flatt wrote:
> >
> > The latest snapshot build at 
> >
> >  http://pre.racket-lang.org/ 
> >
> > adds an `--embed-dlls` option for `raco setup` for use on Windows. The 
> > new flag causes the generated ".exe" file to contain a copy of ".dll" 
> > files that would otherwise need to be packaged with the ".exe". 
> >
> > If there are no other files needed by the executable --- if the program 
> > contains no `define-runtime-path`s for files other than DLLs, and so on 
> > --- then an ".exe" with embedded DLLs can run all by itself on another 
> > machine. 
> >
> >
> > The `--embed-dlls` flag should work for most DLLs, including all of the 
> > DLLs in the main Racket distribution, but it won't work for everything. 
> > Embedded DLLs are linked using the technique described at 
> >
> >  https://www.joachim-bauch.de/tutorials/loading-a-dll-from-memory/ 
> >
> > and using Joachim Bauch's MemoryModule library. It won't work, for 
> > example, with DLLs that use thread-local variables (but many DLLs avoid 
> > those, since the system `LoadLibrary` function also didn't work for 
> > them prior to Windows Vista). 
> >
> >
> > DrRacket's "Create Executables" doesn't yet include an option like 
> > `--embed-dlls`, but it will soon. If it works as expected, we'll also 
> > make `--embed-dlls` automatic for "Create Executables" for the teaching 
> > languages. 
> >
> >
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to racket-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[racket-users] Re: truly stand-alone Windows ".exe"s

2018-03-27 Thread Alex Harsanyi

I have version 6.90.0.23 installed from a few days ago, which appears to be 
the latest version available at  http://pre.racket-lang.org/, and "raco 
exe" does not accept the '--embed-dlls' option. Have these changes not been 
released in a snapshot yet?

Best Regards,
Alex.

On Monday, March 26, 2018 at 10:18:29 PM UTC+8, Matthew Flatt wrote:
>
> The latest snapshot build at 
>
>  http://pre.racket-lang.org/ 
>
> adds an `--embed-dlls` option for `raco setup` for use on Windows. The 
> new flag causes the generated ".exe" file to contain a copy of ".dll" 
> files that would otherwise need to be packaged with the ".exe". 
>
> If there are no other files needed by the executable --- if the program 
> contains no `define-runtime-path`s for files other than DLLs, and so on 
> --- then an ".exe" with embedded DLLs can run all by itself on another 
> machine. 
>
>
> The `--embed-dlls` flag should work for most DLLs, including all of the 
> DLLs in the main Racket distribution, but it won't work for everything. 
> Embedded DLLs are linked using the technique described at 
>
>  https://www.joachim-bauch.de/tutorials/loading-a-dll-from-memory/ 
>
> and using Joachim Bauch's MemoryModule library. It won't work, for 
> example, with DLLs that use thread-local variables (but many DLLs avoid 
> those, since the system `LoadLibrary` function also didn't work for 
> them prior to Windows Vista). 
>
>
> DrRacket's "Create Executables" doesn't yet include an option like 
> `--embed-dlls`, but it will soon. If it works as expected, we'll also 
> make `--embed-dlls` automatic for "Create Executables" for the teaching 
> languages. 
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.