Re: [self-interest] Re: Self@Sourceforge CVS Tree
- View SourceThanks. I don't have an actual linux machine myself at the moment - I'm just working off vmware.Preliminary play with the latest Ubuntu seems to get most of the way (once various libraries have been included). I can get it to more or less work up to the final link stage before ld crashes.One problem I'm not sure how to get around is that Self seems to want to use termcap rather than ncurses which isn't supported on debian based systems.I'll play some more and see if I get anywhere.Cheers,RussellOn 01/06/2008, at 2:21 PM, Adam Spitz wrote:
- View SourceOK, I have a compiled executable on Ubuntu 8.10. Woohoo!At the moment it loads the Demo snapshot, but the desktop doesn't come up.This presumably means that the integration with X11 has gone wrong somewhere.I'll have another try in a few days.(PS: the Self VM has an enormous amount of debugging info! strip took the VM from 168M -> 1.6M!)-------------------------------------russell-desktop:~/Desktop> ./Self -s Demo.snapfor I386: LogVMMessages = truefor I386: PrintScriptName = truefor I386: Inline = truefor I386: SICDeferUncommonBranches = false (not implemented)for I386: SICReplaceOnStack = false (not implemented)for I386: SaveOutgoingArgumentsOfPatchedFrames = trueWelcome to the Self system! (Version 4.2)Copyright 1992-2006 Sun Microsystems, Inc. and Stanford University.See the LICENSE file for license information.Type _Credits for full credits.VM version: 4.1.12Adjusting VM for better UI2 performance:_MaxPICSize: 25_Flush"Self 2" desktop openError: ENOSYS.Receiver is: raiseError.To debug in ui2, type: selfProcessModel debugProcess: 0 asto debug in console, type: attach: 0to dump stack, type: 0 as printError.The desktop is already open!desktop"Self 3" desktop goWarning: Self 1(type: worldMorph) cannot go; no sourceHands.desktop"Self 4" 3 + 47"Self 5" quitSave to Demo.snap before quitting?y => save, then quitn => quit without savingRET => cancelResponse: nrussell-desktop:~/Desktop>On 03/06/2008, at 10:44 PM, Russell Allen wrote:
- View Source--- In email@example.com, Russell Allen <mail@...> wrote:
> OK, I have a compiled executable on Ubuntu 8.10. Woohoo!
> At the moment it loads the Demo snapshot, but the desktop doesn't
> come up.
Did you have to make any changes to the code? (If so, what?) Or was it just a matter of
getting the right libraries and stuff installed?
- View SourceI changed a reference in $SELF_WORKING_DIR/vm/linux/makeDeps.cpp to the gcc version from 4.1 to 4.2.Also I did "sudo ln -s /usr/lib/libncurses.a /usr/local/lib/libtermcap.a" to deal with a linking issue (ncurses will apparently work as termcap if necessary). This presumably should be handled by a change in the build details somewhere, but I'm not sure where.From a stock Ubuntu 8.04 I loaded:libc6-devg++flex-oldbuild-essentialsxorg-devRussellOn 05/06/2008, at 3:41 AM, Adam Spitz wrote:
- View SourceHi,So I have worked out that I can load my module with:bootstrap read: 'webserver' from: 'applications'and file it out with:modules webserver fileOutIs there any way to remove my module from the image, reverting to a nice, clean webserver-less image?Cheers,Russell
- View SourceRussell Allen wrote on Wed, 11 Jun 2008 19:39:17 +1000:
> So I have worked out that I can load my module with:I don't think this has been implemented. Given the annotations that
> bootstrap read: 'webserver' from: 'applications'
> and file it out with:
> modules webserver fileOut
> Is there any way to remove my module from the image, reverting to a nice, clean webserver-less image?
every module has, this should be a lot easier to do than when you file
in stuff with random expressions. Though a single module doesn't save
the values it modified when loading, if you could look at all other
modules and the initial values they define you should be able to figure
out how to restore stuff. But this would require knowing the exact order
in while all present modules were loaded in case multiple modules
changed the same thing with different values.
This, of course, is the general case. For the typical case a new module
only adds stuff without changing what was there before. Removing that
should be pretty simple.