[racket] confusing behaviour of managed-compile-zo
I think the issue is that DrRacket sets `use-compiled-file-paths' to
include "compiled/drracket/errortrace", and the installation doesn't
includes compiled files there, so CM tries to add them.
In other words, there's a collision between your use of CM via
`managed-compiled-zo' and a use already in place for the load handler.
You can work around the problem by setting `use-compiled-path-paths'
back to just `(list "compiled")'.
Meanwhile, I'm not sure which part of the system to blame. I think the
pile of parameters and callbacks isn't right, since DrRacket interferes
with your program, but I don't immediately see how to fix it.
At Wed, 30 Jan 2013 18:15:48 +0100, "Jos Koot" wrote:
> When compiling with managed-compile-zo, manager-compile-notify-handler and
> manager-trace-handler, I see that parts of the racket directory are
> (re)compiled, for example:
>
> TRACE: compiling: C:\Program Files
> (x86)\Racket-Full-5.3.1.10\collects\racket\private\small-scheme.rkt
>
> Thìs even happens again when compiling again without modifying anything. Is
> this expected behaviour?
>
> I do this with Window 7 Home Premium. Another odd thing is that sometimes
> after installing new nightly build, DrRacket does not have all required
> permissions in its collects directory. I sometimes have to grant these
> permissions via the properties of the directory.
>
> Thanks Jos.
>
> PS
> I compile from DrRacket with the following:
>
> #lang racket
> (require compiler/cm)
> (manager-compile-notify-handler (λ (str) (printf "NOTIFY: ~a~n~n" str)))
> (manager-trace-handler (λ (str) (printf "TRACE: ~a~n~n" str)))
> (managed-compile-zo "my-program.rkt")
> (managed-compile-zo "my-other-program.rkt")
> etc.
>
> ____________________
> Racket Users list:
> http://lists.racket-lang.org/users