问题
I am using Squeak 4.4 update 12327, and VM version 4.1.1. I tried to load VMMaker with ConfigurationOf scripts but always fails with exceptions mainly in the Freetype package.
Gofer new
squeaksource: 'MetacelloRepository';
package: 'ConfigurationOfVMMaker';
load.
((Smalltalk at: #ConfigurationOfVMMaker) project version: '1.4') load
or
Gofer new
squeaksource: 'MetacelloRepository';
package: 'ConfigurationOfVMMaker';
load.
(Smalltalk at:#ConfigurationOfVMMaker) project lastVersion load.
or
Gofer new
squeaksource: 'MetacelloRepository';
package: 'ConfigurationOfVMMaker';
load.
(ConfigurationOfVMMaker project version: '1.5') load.
Neither the package repository page, nor the wiki pages (this one, or this one) include instructions or a link to load the VMMaker, although contains a lot of explanations.
回答1:
Unfortunately, the Metacello configuration has been created and used only by Pharo-centric users until now...
You could eventually correct the Squeak branch in the configuration, but that ain't going to be easy to boot up from there.
If you are interested in oscog VM branch, then there is one prebuilt 4.3 image with pre-loaded packages distributed in this svn repository
http://squeakvm.org/svn/squeak/branches/Cog
Look under image subdirectory, open the CogTrunk43.image, there is a workspace explaining how the packages were loaded in the image.
If you are interested in classical Interpreter, then the way to load it was by using the update MCM:
- Open a Monticello browser
- Add the VMMaker repository
(MCHttpRepository location: 'http://source.squeak.org/trunk' user: 'squeak' password: 'squeak')
- Select and open the VMMaker repository
- On the left pane, select 'update' (bottom item)
- On the right pane select the top item (update-dtl.12.mcm)
- Select 'browse' button
- You get a list of packages displayed, click on 'Install' button
The update configuration is a few versions late though, not sure if it is still maintained, the best is also to ask on "Squeak Virtual Machine Development Discussion"
EDIT I think that this magical incantation can replace all GUI oriented operations above:
MCMcmUpdater updateFromRepositories: {'http://source.squeak.org/VMMaker'}.
回答2:
This is thanks to David Lewis, in the CI scripts we use to test the Interpreter VM:
MCMcmUpdater updateFromRepositories: #('http://source.squeak.org/VMMaker').
(Smalltalk at: #VMMaker) initializeBrowserSupport. "activate Slang browsing"
回答3:
Or you can open a SqueakMap
package browser and load the VMMaker
'head' release. This does the same thing as loading the update from Monticello as described above. Either way you will be getting the latest version of VMMaker
and related packages.
来源:https://stackoverflow.com/questions/14176298/how-to-load-vmmaker-in-squeak