[Vm-dev] image install of ubuntu 64-bit has an issue

David T. Lewis lewis at mail.msen.com
Sun Oct 25 04:00:59 UTC 2015


On Sat, Oct 24, 2015 at 07:25:33PM -0400, Robert Withers wrote:
> On 10/24/2015 06:59 PM, David T. Lewis wrote:
> >On Sat, Oct 24, 2015 at 04:05:08PM -0400, Robert Withers wrote:
> >>On 10/22/2015 09:51 PM, David T. Lewis wrote:
> >>>On Wed, Oct 21, 2015 at 10:55:24PM -0400, Robert Withers wrote:
> >>>>On 10/21/2015 10:45 PM, David T. Lewis wrote:
> >>>>>  
> >>>>>To be clear, this refers to the traditional interpreter VM, which can 
> >>>>>be
> >>>>>used for Squeak images through Squeak 4.6, but cannot be used for the 
> >>>>>new
> >>>>>Spur image format that we are using for Squeak 5.0 and for new
> >>>>>development
> >>>>>in Squeak trunk.
> >>>>>
> >>>>>That said, the instructions for building a VM are here:
> >>>>>
> >>>>>   http://lists.squeakfoundation.org/pipermail/vm-dev/2015-April/018259.html
> >>>>>
> >>>>>This will give you at matched set of VMs that can run 32 or 64 bit 
> >>>>>images
> >>>>>on your 32 bit host platform.
> >>>>>
> >>>>>A reasonably recent Squeak image traced to a 64-bit object format is
> >>>>>here:
> >>>>>
> >>>>>   http://build.squeak.org/job/Squeak%2064-bit%20image/lastSuccessfulBuild/artifact/
> >>>>>
> >>>>>I confess that I have not actually tried this on a 32-bit platform in 
> >>>>>the
> >>>>>last several years, but hopefully it still works. Let me know if it 
> >>>>>does
> >>>>>not.
> >>>>Thanks for the information, Dave.  Do I understand that this image is a
> >>>>64-bit, Squeak 4.6 image?
> >>>Basically yes. It is a 4.5 image updated to #15102, which is similar to
> >>>the 4.6 release image. See attached SystemReporter for the details. You
> >>>can also trace your own 4.6 image to 64 bits if you want an exact copy.
> >>I tried to build these vms and the 32-bit vm blew up on me with this:
> >>
> >>Here's my attempt to build and run the 4.6 32-bit interpreter on a
> >>64-bit image, which I had build as above.
> >>
> >>rabbit at rabbithole:~/warren/interpreter-4.6/build$ build/squeakvm
> >>TrunkImage-64.image
> >>could not find display driver vm-display-X11; either:
> >>   - check that /usr/local/lib/squeak/4.14.2-3479/vm-display-X11.so
> >>exists, or
> >>   - use the '-plugins <path>' option to tell me where it is, or
> >>   - remove DISPLAY from your environment.
> >>Aborted (core dumped)
> >>
> >>I cleared DISPLAY and ran again:
> >>
> >>rabbit at rabbithole:~/warren/interpreter-4.6/build$ build/squeakvm
> >>TrunkImage-64.image
> >>squeak: could not find any display driver
> >>Aborted (core dumped)
> >>
> >>Not sure what's happening.
> >>
> >It looks like you are trying to run something out of your build directory?
> >That will not work. The VM needs to be able to find its plugins and
> >VM modules in known directory paths, and if you accidentally mix up
> >the executable modules from various VMs, you will get core dumps and
> >"module not found" problems.
> >
> >Try "sudo make install" to get a proper installation, then "squeak 
> >myimage".
> >The /usr/local/bin/squeak script will look at your image, figure out what
> >executables to use, and run them from the appropriate
> >/usr/local/lib/squeak/<someversion>/ directory.
> Alright, I've tried this. I saw the -vm-display-X11 option, as well. 
> Here is what I am getting now:
> 
> rabbit at rabbithole:~/warren/interpreter-4.6/build$ squeak -vm-display-X11 
> TrunkImage-64.image
> Could not open display `(null)'.
> 
> Ok, I set $DISPLAY to ':0' and it launches the squeak vm on the 64-bit 
> image, but the fonts are blocked out. I am attaching a screenshot.

Well that's interesting. As I said, I had not really tried running the
64-bit image on a 32-bit host any time recently. But apparently there are
bugs in the VM and/or plugins that are exposed by more recent versions
of the image when running on 64-bit image/32-bit host.

The last time that I actually checked this out on a 32-bit host platform,
the 64-bit image that I put on the squeakvm.org/squeak64/ page
(http://squeakvm.org/squeak64/sq64-dtl.zip) worked fine when run on a
32-bit host platform. And indeed, it still does. You can run this on
your newly compiled VM and it will work.

I just did a VM recompile in 32-bit mode, and I see that an up to date
Squeak trunk image traced to the V3 64-bit format (not spur) is showing
display problems as you have found. It does of course work when the same
VM is compiled in 64-bit mode (64-bit host VM), which presumably would
be the configuration of more general interest.

I'm not planning to try to chase this bug down, but I would certainly
appreciate knowing if you find anything more to identify the root cause.

Thanks,
Dave



> 
> >
> >Note that both Cog and Spur VMs may attempt install on top of the same
> >/usr/local/bin/squeak and/or /usr/bin/squeak path. On my systems, I resolve
> >the conflicts by renaming the cog and spur VMs to /usr/local/bin/cog and
> >/usr/local/bin/spur respectively. So if you have spur installed now as
> >/usr/local/bin/squeak, you may want to rename it to /usr/local/bin/spur
> >before you do your "sudo make install".
> That's a great idea because I am losing track of which is which.
> 
> --- Robert
> >
> >Dave
> >
> 


More information about the Vm-dev mailing list