[Squeak-ev] CommandShell in SqueakLand

Jens Lincke jens at impara.de
Mit Apr 18 13:52:59 UTC 2007


Markus Biermaier schrieb:
> Hallo,
>
> danke für die Hilfe mit den LenkRädern. Funktioniert bestens!
>
> Eine nächste Frage:
>
> Mein OS ist Linux.
> Die Pakete
> - squeak-vm-3.7i7sl-4.i386.rpm
> - squeakland-3.8-3.noarch.rpm
> habe ich installiert.
> Die Standard-Beispiele funktionieren.
>
> Ich hätte gerne die Funktionalität andere Programme aufzurufen - 
> ähnlich dem Aufruf system ("Command") in anderen ProgrammierSprachen.
> Nach meinem Googeln muss ich dazu die Packages "OSProcess" und 
> "CommandShell" installieren.
>
> KurzFassung:
> Ich kann diese Pakete mit Übergehen einiger FehlerMeldungen und 
> Warnungen installieren. Und CommandShell funktioniert auch.
> Aber sobald ich SqueakLand verlasse und neu starte sind die neuen 
> Pakete wieder weg.
>
> Meine Schritte im Detail:
> 1) Ich starte SqueakLand und öffne im Welt-Menü den "(SqueakMap) 
> Package Loader".
> 2) Es erscheint die Meldung, dass der SqueakMap Master Server die 
> Version 2.2 hat, der Client aber 2.0 und ob ich das SqueakMap package 
> upgraden will. Ich antworte "yes".
> 3) Während des Upgrades erscheint die Meldung "...Undefined 
> Object>>flush..."
> 4) Der Package Loader wird geladen. Es erscheint ein Browser mit 689 
> Paketen.
> 5) Ich selektiere "CommandShell" und erhalte die Warnung, dass dieses 
> Pakete keine Releases für meine SqueakVersion enthält, und die Frage, 
> ob ich eine Release für irgend eine SqueakVersion versuchen will. Ich 
> antworte "yes".
> 6) Ich erhalte die Warnung, dass dieses Paket nicht als kompatibel mit 
> meiner image Version (Squeakland 3.8) gelistet ist, und ob ich die 
> Installation fortsetzen will. Ich antworte "yes".
> 7) Es erscheint eine Meldung über einen Fehler: ...Undefined 
> Object>>flush..."
> 8) Das Paket hat sich installieren lassen. "CommandShell" funktioniert 
> aber noch nicht.
> 9) Ich installiere das Paket "OSProcess"
> 10) Es erscheint eine Meldung über einen Fehler: ...Undefined 
> Object>>flush..."
> 11) Ich öffne ein WorkSpace Fenster, gebe ein: "CommandShell command: 
> 'ls -l' und es funktioniert!
an dieser stelle solltest du deine Änderungen am Image auch als Image 
speichern. Pupliziert werden nur EToys-Projekte. Das image landet nach 
dem ersten starten in ~/.npsqueak/SqueakPlugin.image, dorthin solltest 
du auch speichern, wenn es für andere Projekte wiederverwendet werden 
soll...

> 12) Dann versuche ich zu "publizieren" und erhalte die Meldung: "Some 
> block(s) which reference instance variables are included in this 
> segment. These may fail when the segment is loaded if the class has 
> been reshaped. What would you like to do?" Ich wähle "keep going".
> 13) Ich beende SqueakLand und starte es neu (1).
> 14) Die Meldung: "Reading an instance of SMMaintainableObject. Which 
> modern class should I translate it to? Let me type the name now. Let 
> me think about it. Let me find a conversion find on the disk." Diese 
> Sache verstehe ich gar nicht.
>
> Was mache ich falsch?
>
> Vielen Dank für jeden Tipp
>
> Markus