Folks, Source and binaries for Linux/i386, Darwin/i386 & Darwin/PPC now available. (Solaris, NetBSD and FreeBSD still at 3.11.3 until I get my kvm working again.) http://squeakvm.org/unix Enjoy! Ian Major changes since 3.11.3.2135: Generated sources rebuilt from VMMaker-dtl.169. Re-enabled MIDI support via ALSA on Linux. Broken locales should no longer cause line ends to go missing during copy and paste. Add support for "platform source version" primitive. Remove debugging beep on first clipboard copy under X11. Allow fully-qualified pathnames when loading modules. Bundle FreetypePlugin with source and binary releases. Various fixes for 64-bit cleanliness (many thanks to Dave Lewis). Add microsecond clock support. Fix launching from a menu under KDE. Fix --CFLAGS option in configure script. Serial plugin invalidates cached port names on close. Better handling of symlinks when looking for absolute path to VM binary. |
Hi Ian, I've downloaded the source, configure & make, no problem. FT2Plugin's here, cool ! But when I start running all tests on a Pharo 1.0 rc4 image, it crashes. I know this crash. A workaround is to put UUID plugin as Internal. Maybe it's Pharo specific ?
Segmentation fault 2017744556 UUID>initialize 2017744324 Behavior>new: 2017744232 >new 2017744140 GoferResource>setUpMonticelloRepository
2017743960 OrderedCollection>do: 2017743868 GoferResource>setUpMonticelloRepository 2017725324 GoferResource>setUp 2017725232 TestResource>initialize 2017725140 Behavior>new
2017725048 >current 2017724956 >isAvailable 2017724864 TestRunner>basicSetUpSuite: 2017227828 Set>do: 2017227636 TestRunner>basicSetUpSuite: 2017227544 TestRunner>basicRunSuite:do:
2017227452 TestRunner>runSuite: 2016654544 TestRunner>runAll 2016654452 PluggableButtonMorph>performAction 2016654360 PluggableButtonMorphPlus>performAction 2016654268 PluggableButtonMorph>mouseUp:
2016654176 SequenceableCollection>do: 2016653384 PluggableButtonMorph>mouseUp: 2016653248 PluggableButtonMorphPlus>mouseUp: 2016653156 Morph>handleMouseUp: 2016653064 MouseButtonEvent>sentTo:
2016652972 Morph>handleEvent: 2016652880 Morph>handleFocusEvent: 2016652712 HandMorph>sendFocusEvent:to:clear: 2016652620 PasteUpMorph>becomeActiveDuring: 2016652528 BlockClosure>on:do:
2016652436 PasteUpMorph>becomeActiveDuring: 2016652320 HandMorph>sendFocusEvent:to:clear: 2016652160 HandMorph>sendEvent:focus:clear: 2016652068 HandMorph>sendMouseEvent:
2016651976 HandMorph>handleEvent: 2016651712 HandMorph>processEvents 2016651604 WorldState>doOneCycleNowFor: 2016651512 SequenceableCollection>do: 2016651420 WorldState>handsDo:
2016651328 WorldState>doOneCycleNowFor: 2016651200 WorldState>doOneCycleFor: 2016651108 PasteUpMorph>doOneCycle 1997723608 >? 1997723480 BlockClosure>? Laurent Laffont On Mon, Apr 12, 2010 at 12:18 AM, Ian Piumarta <[hidden email]> wrote:
|
IIRC it really was Ubuntu's libuuid that crashes ... - Bert - On 12.04.2010, at 08:17, laurent laffont wrote: Hi Ian, |
I use ArchLinux. Laurent Laffont
|
Same difference, maybe? ;) - Bert - On 12.04.2010, at 13:14, laurent laffont wrote:
|
I tend to think that if it's really a libuuid problem the VM would crash whether UUIDPlugin is built Internal or External. Laurent Laffont On Mon, Apr 12, 2010 at 1:34 PM, Bert Freudenberg <[hidden email]> wrote:
|
In reply to this post by Ian Piumarta
The top-level makefile fails: make: *** No rule to make target `bld/squeakvm', needed by `all'. Stop. IMHO, "bld/squeakvm" should just be removed, right? I wanted Sugar's "jhbuild" to use this new tarball release instead of pulling from the obsolete olpc branch. But I need to figure out another way anyway, because jhbuild needs to set a prefix and that's not supported by the top-level makefile anyway. Jhbuild supports cmake natively, but complains about not finding CMakeLists.txt (see below). Jhbuild also supports "patches". So I might be able to add a file locally that does the necessary magic - probably autogen.sh as I had before in the olpc-branch: http://library.gnome.org/devel/jhbuild/stable/moduleset-syntax.html.en#moduleset-syntax-defs-autotools Does anyone have a better idea for automating a squeak-vm build from source? - Bert - [bert@localhost sugar-jhbuild]$ ./sugar-jhbuild buildone squeak *** Checking out squeak *** [1/1] wget --continue http://squeakvm.org/unix/release/Squeak-4.0.3.2196-src.tar.gz -O /home/bert/sugar-jhbuild/source/Squeak-4.0.3.2196-src.tar.gz --2010-04-12 16:15:24-- http://squeakvm.org/unix/release/Squeak-4.0.3.2196-src.tar.gz Resolving squeakvm.org... 67.213.223.125, 67.213.223.125 Connecting to squeakvm.org|67.213.223.125|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 3623512 (3.5M) [application/x-gzip] Saving to: “/home/bert/sugar-jhbuild/source/Squeak-4.0.3.2196-src.tar.gz” 100%[==========================================================================================>] 3,623,512 1.00M/s in 3.7s 2010-04-12 16:15:28 (964 KB/s) - “/home/bert/sugar-jhbuild/source/Squeak-4.0.3.2196-src.tar.gz” saved [3623512/3623512] gunzip -dc "/home/bert/sugar-jhbuild/source/Squeak-4.0.3.2196-src.tar.gz" | tar xf - *** Configuring squeak *** [1/1] cmake -DCMAKE_INSTALL_PREFIX=/home/bert/sugar-jhbuild/install /home/bert/sugar-jhbuild/source/Squeak-4.0.3.2196-src CMake Error: The source directory "/home/bert/sugar-jhbuild/source/Squeak-4.0.3.2196-src" does not appear to contain CMakeLists.txt. Specify --help for usage, or press the help button on the CMake GUI. *** Error during phase configure of squeak: ########## Error running cmake -DCMAKE_INSTALL_PREFIX=/home/bert/sugar-jhbuild/install /home/bert/sugar-jhbuild/source/Squeak-4.0.3.2196-src *** [1/1] |
Hi Bert, On Apr 12, 2010, at 7:32 AM, Bert Freudenberg wrote: > make: *** No rule to make target `bld/squeakvm', needed by `all'. > Stop. This is from the Makefile in your build directory? Or the one in platforms/unix?? The latter hasn't been updated since the change to cmake. I just updated it. > IMHO, "bld/squeakvm" should just be removed, right? It's the first target defined in unix/vm/build.cmake. > I wanted Sugar's "jhbuild" to use this new tarball release instead > of pulling from the obsolete olpc branch. But I need to figure out > another way anyway, because jhbuild needs to set a prefix and that's > not supported by the top-level makefile anyway. Sounds like it should be easy. What do you need? (Show me what the invocation of 'make' should look like, and explain as unambiguously as possible what the variables you pass to it should do to affect the way things are installed.) > Jhbuild supports cmake natively, but complains about not finding > CMakeLists.txt (see below). It looks like your builder assumes CMakeLists.txt is in the top-level of the extracted sources. Ours is buried way down in Squeak-src/ platforms/unix/. If you can't persuade the build script to look in the right place, you could maybe patch a Makefile into the platforms dir that calls cmake on its behalf -- something similar to platforms/ unix/Makefile (the latest version in the repo). Cheers, Ian |
In reply to this post by laurent laffont
On Mon, Apr 12, 2010 at 01:48:32PM +0200, laurent laffont wrote: > > I tend to think that if it's really a libuuid problem the VM would crash > whether UUIDPlugin is built Internal or External. Hi Laurent, This bug is documented on Mantis http://bugs.squeak.org/view.php?id=7358 Can you confirm that the bug does *not* exist when you build the plugin as internal, and that it *does" exist if you build it external on the same platform. It would be a big help to know if this is the case. My impression up until now is that this is a bug in the runtime libuuid library, and that it has something to do with running a program with pthreads (i.e. it does not happen with a simple test program). But I have never actually seen the bug on my own system, so I'm guessing based on some google searches and the information that I read on the Pharo list. Thanks! Dave |
In reply to this post by Ian Piumarta
On 12.04.2010, at 17:18, Ian Piumarta wrote: > > Hi Bert, > > On Apr 12, 2010, at 7:32 AM, Bert Freudenberg wrote: > >> make: *** No rule to make target `bld/squeakvm', needed by `all'. Stop. > > This is from the Makefile in your build directory? Or the one in platforms/unix?? The latter hasn't been updated since the change to cmake. I just updated it. I meant the platforms/unix one, which ends up on the top-level in the tarball. >> IMHO, "bld/squeakvm" should just be removed, right? > > It's the first target defined in unix/vm/build.cmake. Yes, but that was not executed yet if you just untar and run make. >> I wanted Sugar's "jhbuild" to use this new tarball release instead of pulling from the obsolete olpc branch. But I need to figure out another way anyway, because jhbuild needs to set a prefix and that's not supported by the top-level makefile anyway. > > Sounds like it should be easy. What do you need? (Show me what the invocation of 'make' should look like, and explain as unambiguously as possible what the variables you pass to it should do to affect the way things are installed.) Well I'm not sure yet how the prefix would be passed ... Btw, can you wrap this: set | fgrep SQUEAK_ set -x in an if [ "0$SQUEAK_DEBUG" -gt "0" ] ? - Bert - >> Jhbuild supports cmake natively, but complains about not finding CMakeLists.txt (see below). > > It looks like your builder assumes CMakeLists.txt is in the top-level of the extracted sources. Ours is buried way down in Squeak-src/platforms/unix/. If you can't persuade the build script to look in the right place, you could maybe patch a Makefile into the platforms dir that calls cmake on its behalf -- something similar to platforms/unix/Makefile (the latest version in the repo). > > Cheers, > Ian > - Bert - |
On Apr 12, 2010, at 5:29 PM, Bert Freudenberg wrote: > I meant the platforms/unix one, which ends up on the top-level in > the tarball. Ah, that one comes from somewhere else. I've fixed it. > in an if [ "0$SQUEAK_DEBUG" -gt "0" ] ? Will do. Cheers, Ian |
Hi Ian, I finally got to wrap my head around CMake to make the web browser plugin compile again under Linux. Attached my results, untar into platforms/unix of svn 2205 (btw, platforms/Cross as of 2203 won't compile, b/c of Alien apparently). I adapted the scripts a bit, and updated the documentation, but mainly it's the dozen lines in npsqueak/CMakeLists.txt that makes this work ... the plugin itself is unchanged since 2005. I must say I'm beginning to like CMake, though it's tough to get started. To test after make install run npsqueakregister, and symlink an Etoys image (e.g. from squeakland.org's etoys-to-go) into ~/.npsqueak/SqueakPlugin.image or /usr/local/lib/squeak/SqueakPlugin.image and then go to squeakland.org/showcase in your web browser. I don't have an idea yet how to modify this so that Etoys could use different folders (e.g. not ~/.npsqueak but ~/.etoys, and similarly for the user dir). The best would be to run "etoys" instead of "squeak" but I don't know how to configure npsqueakrun to do that (besides, the current etoys script would stumble over the browserPipes argument ...) On a slightly unrelated note, could we automatically enable -xshm in the squeak script, if it is available? I included yet another fix for realpath() and the debug output, but don't know how to check for xshm. - Bert - npsqueak.tgz (16K) Download Attachment |
El lun, 10-05-2010 a las 22:14 -0700, Bert Freudenberg escribió: > Hi Ian, I finally got to wrap my head around CMake to make the web browser plugin compile again under Linux. Attached my results, untar into platforms/unix of svn 2205 (btw, platforms/Cross as of 2203 won't compile, b/c of Alien apparently). I adapted the scripts a bit, and updated the documentation, but mainly it's the dozen lines in npsqueak/CMakeLists.txt that makes this work ... the plugin itself is unchanged since 2005. I must say I'm beginning to like CMake, though it's tough to get started. To test after make install run npsqueakregister, and symlink an Etoys image (e.g. from squeakland.org's etoys-to-go) into ~/.npsqueak/SqueakPlugin.image or /usr/local/lib/squeak/SqueakPlugin.image and then go to squeakland.org/showcase in your web browser. I don't have an idea yet how to modify this so that Etoys could use different folders (e.g. not ~/.npsqueak but ~/.etoys, and similarly for the user dir). The best would be to run "etoys" instead of "squeak" but I don't know how to configure npsqueakrun to do that (besides, the current etoys script would stumble over the browserPipes argument ...) On a slightly unrelated note, could we automatically enable -xshm in the squeak script, if it is available? I included yet another fix for realpath() and the debug output, but don't know how to check for xshm. - Bert - Hello Bert, I know it's a long time since you sent this email, but I'm trying now to compile the browser plugin and I'm not able to do it. Also, in the compiled vm Ian Piumarta published last January ( http://www.squeakvm.org/unix/release/Squeak-4.4.7.2357-linux_i386.tar.gz ) the plugin is not compiled either, so it looks like something is still missing in the vm sources. Regards. José L. signature.asc (204 bytes) Download Attachment |
Free forum by Nabble | Edit this page |