[racket-dev] Patching a distribution

From: Eric Dobson (endobson at cs.brown.edu)
Date: Thu Sep 2 12:24:20 EDT 2010

I am trying to create a patch for 5.0.1 in the form of a plt file that
will backport fixes to plai. To do this I also need to backport the
new define-struct.

I am getting bugs after installation about bytecode mismatches. I'm
wondering if I am doing this correctly and if there is a better way of
doing this?

I put everything in a folder called collects with the correct inner
structure, and then run the following command to make the plt file.

raco pack --at-plt --all-users --replace ++setup racket ++setup plai
plai.plt collects

and then (with a fresh install from the 5.0.1 debian.sh package)

drracket plai.plt (choosing to install the plt file).

Run drracket again and I get the message:

Error invoking tool

link: reference (phase 1) to a variable in module
("/home/endobson/plt/plt/collects/mzlib/unit.rkt" . 1) that is
uninitialized (phase level 1); reference appears in module:
"/home/endobson/plt/plt/collects/framework/main.rkt" in:

 === context ===
/home/endobson/plt/plt/collects/framework/main.rkt: [running expand-time body]
/home/endobson/plt/plt/collects/racket/private/map.rkt:50:17: loop
/home/endobson/plt/plt/collects/drracket/tool-lib.rkt: [running body]
[running body]
/home/endobson/plt/plt/collects/drracket/drracket.rkt: [running body]

Clicking past this I get a 'link: module mismatch'  error and a frozen
drracket. The plt file is attached.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: plai.plt
Type: application/octet-stream
Size: 46456 bytes
Desc: not available
URL: <http://lists.racket-lang.org/dev/archive/attachments/20100902/03c3ba31/attachment.plt>

Posted on the dev mailing list.