<html><body bgcolor="#FFFFFF"><div><br><br>-- David (tapped out on my iPhone; blame it for any typoze;-)</div><div><br>On Sep 8, 2011, at 8:47 AM, David Ungar <<a href="mailto:ungar@me.com">ungar@me.com</a>> wrote:<br><br></div><div></div><blockquote type="cite"><div><div>All I can suggest are the obvious:</div><div><br></div><div>google the linker error message to figure it out,</div><div><br></div><div>Run the VM ( compiled -g -O0 ) in a debugger. There are also debug options you can turn on--been a long time--but it sounds really broken and thus easier to fix. </div><div><br>- David (from iPad, typos likely)</div><div><br>On Sep 8, 2011, at 7:08 AM, Mildred Ki'Lya <<a href="mailto:mildred593@gmail.com"><a href="mailto:mildred593@gmail.com">mildred593@gmail.com</a></a>> wrote:<br><br></div><div></div><blockquote type="cite"><div>




<span style="display:none"> </span>



    <div id="ygrp-text">
      
      
      <p>Hi,<br><br>I would like to get into the source code of the Self vm a little bit. if only to make it better, for example porting the gui to cairo on linux. But I can't seem to compile it and get a working executable.<br>
<br>I created build scripts using redo on <a href="https://github.com/mildred/self">my personal branch</a>. That's all the *.do files. these are basically shell scripts that mirror what the release/buildLinuxVM script does. For the moment it only forward orders to make, but I plan to make it compile everything once I am successful getting a Self vm that works. The only major difference with Makefiles is that I wrote are:<br>
</p><ul><li>a <a href="https://github.com/mildred/self/blob/master/vm/linux/generated/lists.do">perl script</a> to postprocess vm/linux/generated/Dependancies. The \ at end of lines got removed for unknown reasons, and the perl script just put them again.</li>
<li>I added back the -ldl linker flag, or else linking failed because it couldn't find dlopen<br></li></ul><br>When I compile, I get a Self binary, but the linker tells me:<br><br><div><span style="font-family: courier new,monospace;">...</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">Compiling vmDate</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">Linking Self</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">/usr/bin/ld: warning: cannot find entry symbol start; defaulting to 000000000804c660</span><br></div><br>When I start it, it seems to work:<br><br><div style="font-family: courier new,monospace;">
$ ./Self<br>Self Virtual Machine Version 4.1.13, Thu 08 Sep 11 15:02:41 Linux<br>Copyright 1989-2003: The Self Group (type _Credits for credits)<br><br>for I386:  LogVMMessages = true<br>for I386:  PrintScriptName  = true<br>
for I386:  Inline = true<br>for I386:  SICDeferUncommonBranches = false (not implemented)<br>for I386:  SICReplaceOnStack = false (not implemented)<br>for I386:  SaveOutgoingArgumentsOfPatchedFrames = true<br>VM# <br></div>
<br>But if I do anything, it crashes:<br><div><br>
<span style="font-family: courier new,monospace;">VM# </span><b style="font-family: courier new,monospace;">quit</b><br style="font-family: courier new,monospace;">
<br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
Internal error: signal 11 code 1 addr 0x53565759 pc 0x80df3bf.</span><br style="font-family: courier new,monospace;">
<br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
VM Version: 4.1.13, Thu 08 Sep 11 15:02:41 Linux</span><br style="font-family: courier new,monospace;">
<br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
Self process 17824 on silly has crashed.</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
Do you want to:</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
   1) Quit Self (optionally attempting to write a snapshot)</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
   2) Try to print the Self stack</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
   3) Try to return to the Self prompt</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
   4) Force a core dump</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
   5) Print the interrupted context registers</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
Your choice: 1</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
Enter snapshot name (hit return to omit snapshot) > </span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
No snapshot specified, will skip this step</span></div><br>I get the same thing if I do ./Self -s ~/Downloads/Clean-4.4.snap (snapshot downloaded from the Self website)<br><br>Do you have any idea of what went wrong?<br>
<br>Thanks<br><br>Mildred<br>
<p></p>

    </div>
     

    





<!-- end group email -->

</div></blockquote></div></blockquote></body></html>