[racket] read (compiled): code compiled for version A, not B

From: Jon Rafkind (rafkind at cs.utah.edu)
Date: Sat Feb 4 15:14:51 EST 2012

On 02/03/2012 07:01 PM, Neil Van Dyke wrote:
> Is there a good and convenient way to avoid errors like these?
>
>     compiled/info_rkt.zo::0: read (compiled): code compiled for version 5.2.0.7, not 5.2.1.3
>
> I was thinking maybe the "compiled" directories could have subdirectories for Racket versions.  Although, there might still be generated files specific to a Racket version that do not fall under the "compiled" directories.
>
> Another way might be that Racket could ignore and overwrite files under "compiled" that have the wrong version.  Although, then tools might have to open the files to determine whether up-to-date, rather than look at only names and filesystem timestamps.
>

$ raco make foo.rkt && racket foo.rkt

Seems to work most of the time. I tried to solve this exact issue with my 'raco auto' tool a month ago but I eventually learned that 'raco make' did 99% of what I wanted anyway.

Posted on the users mailing list.