On Wed, Jul 14, 2010 at 7:04 PM, Chris Muller <[hidden email]> wrote: Eliot, if I came across as having any expectations of you That's OK. I'm just trying to bully you into gdb ;) best Eliot
|
Debuggers are fun! "Just play it grand." :)
Seriously if I get a handle on my new job fast enough, I'm gonna beat you to it. Go!
On Wed, Jul 14, 2010 at 8:27 PM, Eliot Miranda <[hidden email]> wrote:
-- Casey Ransberger |
In reply to this post by Casey Ransberger-2
I haven't tried Cog on linux, but from many years of porting SW to
various Unix flavours, the "weird double slash" _might_ be some config variable ending up as the empty string. The unix kernel file name to inode lookup routine used to explicitly allow a "//" as a "/", and it might still, so if the config var is supposed to be the empty string it might still work :). If it isn't supposed to be the empty string, I'd look at the directory in the prefix before the "//" (/usr/local/ lib/squeak/3.9-7/) and see what directories were there. Each directory (or path) is a candidate for the value of the config var. and if the suffix exists in one or more of them, you know what the missing config var's value should have been :). On 2010-Jul-14, at 19:15, Casey Ransberger wrote: > Levente, > > I suspected the same. I was running an older Ubuntu release. I > thought maybe I had cruft left over from my old VM, (or from a > couple of Cog builds that failed because I was missing > dependencies,) and maybe that was causing my problem. So I paved the > disk, installed 10.4, and built Cog w/o ever installing another VM. > Same symptom, with the weird double slash in the error message. > > On Jul 14, 2010, at 6:53 PM, Levente Uzonyi <[hidden email]> wrote: > >> On Wed, 14 Jul 2010, Casey Ransberger wrote: >> >>> Changing subject for sanity. >>> >>> Is there a place to file bugs against the open source version of >>> Cog? (*nudge*) It might improve signal:noise in any event. >>> >>> I realize that OSCog is the community's responsibility! But if >>> we're going to be responsible about shepherding it, we may as well >>> add a category to Mantis (or something.) What do folks think about >>> that? >>> >>> FWIW, I had the same symptom running Ubuntu 10.4; Eliot was kind >>> enough to suggest some things I might explore with the debugger, >>> but I haven't had time to drill down into it (just took a new job, >>> ramping up on a pile of software and relational tomfoolery.) >>> >>> It seems like it's a distro-issue. I'm curious, and I understand >>> that it might not be apropos to disclose, but on the off chance it >>> is, what GNU/Linux distro has Cog seen the most testing on? >> >> That's really strange, because I succesfully built Cog on Ubuntu >> 10.4 and it works fine. Today I even managed to compile the plugin >> for FFI and Alien (thought none of them works :)) and the >> UUIDPlugin. I also fixed the cryptography plugins, those work well >> (at least the tests pass). >> Back to your problem: after compiling I only have vm-display-X11, >> but no vm-display-X11.so. Are you sure you're not mixing the files/ >> VMMaker of the CogVM and the SqueakVM? >> >> >> Levente >> >>> >>> This thread seems to have wandered a bit, but I'll read the whole >>> thing and then forward his suggestions if they still seem >>> promising and haven't been reproduced here. >>> >>> On Jul 14, 2010, at 1:55 PM, Eliot Miranda >>> <[hidden email]> wrote: >>> >>>> >>>> >>>> On Wed, Jul 14, 2010 at 11:23 AM, Chris Muller >>>> <[hidden email]> wrote: >>>> Hi Eliot, if you replied to my original post under a different >>>> subject, I must have missed it: >>>> >>>> http://lists.squeakfoundation.org/pipermail/squeak-dev/2010-June/151522.html >>>> >>>> I do not have adequate C or C++ experience to even run the >>>> debugger. >>>> I really just want to _get_ a Cog VM so I can be more productive in >>>> getting my work done so I can then work on things like learning new >>>> langauges and tools... :) >>>> >>>> If you can compile the VM you can surely learn to use gdb. Its >>>> only a debugger. break foo. step. etc. etc. It would really >>>> help (yourself and others) if you'd take this next step. You >>>> might be the only one trying too build and run on your particular >>>> distro. So you might be the only one who can diagnose the >>>> problem. Look on it as a learning experience. >>>> >>>> BTW, I have work to do also. I don't get paid to provide the >>>> open-source Cog. I get paid to keep Teleplace working. You're >>>> potentially going to benefit a lot by using a faster VM. You >>>> might view putting in a little time now as payback. It'd be >>>> appreciated. >>>> >>>> best >>>> Eliot >>>> >>>> >>>> I had hoped, given that the problem seems to be exposed (the >>>> double-slash) that the cause and solution would be obvious to >>>> someone.. >>>> >>>> >>>> >>>> >>>> On Wed, Jul 14, 2010 at 12:58 PM, Eliot Miranda <[hidden email] >>>> > wrote: >>>>> >>>>> >>>>> On Wed, Jul 14, 2010 at 10:22 AM, Chris Muller <[hidden email] >>>>> > wrote: >>>>>> >>>>>> I followed these instructions to the letter, and get the same >>>>>> result I >>>>>> got a few weeks ago. I posted a question then, but no >>>>>> responses. May >>>>>> I try again? >>>>> >>>>> Chris, I believe I replied suggesting you step though the >>>>> dynamic loading >>>>> code to get more information. >>>>> I think everything starts from loadModules in >>>>> platforms/unix/vm/sqUnixMain.c. >>>>> I suggest you rerun the configure command to eliminate all >>>>> optimization >>>>> (including deleting any -fomit-frame-pointer) and then step from >>>>> loadModules >>>>> and see why you don't get to a functional dlopen call >>>>> in platforms/unix/vm/sqUnixExternalPrims.c. >>>>> HTH >>>>> Eliot >>>>> >>>>>> >>>>>> Everything seems to go just fine throughout these build >>>>>> instructions. >>>>>> For the final step, I put it in /usr/local/lib. >>>>>> >>>>>> make install prefix=/usr/local/lib/squeak >>>>>> >>>>>> and I made sure /usr/local/lib/squeak exists before doing the >>>>>> make >>>>>> install. >>>>>> >>>>>> The make install appears to work fine, and I am able to see >>>>>> squeak >>>>>> -version: >>>>>> >>>>>> $ squeak -version >>>>>> 3.9-7 #1 Wed Jul 14 12:07:56 CDT 2010 gcc 4.3.3 >>>>>> Croquet Closure Cog VM [CoInterpreter VMMaker-oscog.20] >>>>>> Linux chrisT60p 2.6.28-11-generic #42-Ubuntu SMP Fri Apr 17 >>>>>> 01:57:59 >>>>>> UTC 2009 i686 GNU/Linux >>>>>> plugin path: /opt/4dst/thirdparty/squeak/lib/squeak/3.9-7/ >>>>>> [default: >>>>>> /opt/4dst/thirdparty/squeak/lib/squeak/3.9-7/] >>>>>> >>>>>> However, when I try to launch an image: >>>>>> >>>>>> squeak my.image >>>>>> >>>>>> The image does not launch and I get the following: >>>>>> >>>>>> could not find display driver vm-display-X11; either: >>>>>> - check that /usr/local/lib/squeak/3.9-7//vm-display-X11.so >>>>>> exists, or >>>>>> - use the '-plugins <path>' option to tell me where it is, or >>>>>> - remove DISPLAY from your environment. >>>>>> >>>>>> notice the double-slash in reference to the plugins location. >>>>>> Perhaps >>>>>> that's the problem, but what's the correct solution? >>>>>> >>>>>> Any advice is greatly appreciated.. >>>>>> >>>>>> - Chris >>>>>> >>>>>> >>>>>> >>>>>> On Tue, Jul 13, 2010 at 4:04 PM, Levente Uzonyi <[hidden email]> >>>>>> wrote: >>>>>>> On Tue, 13 Jul 2010, Rob Withers wrote: >>>>>>> >>>>>>>> Thanks Levente. Unfortunately it did not work: >>>>>>>> >>>>>>>> ./lib/squeak/3.9-7/squeak: /lib/libc.so.6: version >>>>>>>> `GLIBC_2.11' not >>>>>>>> found >>>>>>>> (required by ./lib/squeak/3.9-7/squeak) >>>>>>> >>>>>>> Seems like you have to build it yourself. Fortunately it's >>>>>>> very easy, >>>>>>> since >>>>>>> Eliot commits the generated sources to the svn repo. So you >>>>>>> can build a >>>>>>> CogVM/StackVM without VMMaker. Here is how: >>>>>>> >>>>>>> "How to build the Cog Croquet VM on Unix >>>>>>> ------------------------------- >>>>>>> 1. Install the tools (gcc, X11-devel, etc (e.g. libpng, libX11 >>>>>>> & libxt >>>>>>> source)) >>>>>>> 2. Check out the following sources from svn (if you haven't >>>>>>> already - if >>>>>>> you're >>>>>>> reading this in unixbuild its likely you've already got the >>>>>>> sources) >>>>>>> svn co http://www.squeakvm.org/svn/squeak/branches/Cog/platforms >>>>>>> svn co http://www.squeakvm.org/svn/squeak/branches/Cog/src >>>>>>> svn co http://www.squeakvm.org/svn/squeak/branches/Cog/unixbuild >>>>>>> 3. Open a shell, cd into the unixbuild/bld directory and execute >>>>>>> ../../platforms/unix/config/configure CFLAGS="-g -O2 -msse2 >>>>>>> -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 >>>>>>> -DCOGMTVM=0" >>>>>>> LIBS=-lpthread >>>>>>> make install prefix=WhereYouWantTheVmToGo >>>>>>> 4. At the end of it you'll get a new VM in the path provided via >>>>>>> -prefix" >>>>>>> >>>>>>> >>>>>>> Levente >>>>>>> >>>>>>>> >>>>>>>> Rob >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> ________________________________ >>>>>>>> From: Levente Uzonyi <[hidden email]> >>>>>>>> To: The general-purpose Squeak developers list >>>>>>>> <[hidden email]> >>>>>>>> Sent: Tue, July 13, 2010 3:21:43 PM >>>>>>>> Subject: Re: Cog on linux (was: Re: [squeak-dev] Re: UI >>>>>>>> lockup in >>>>>>>> Squeak >>>>>>>> 4.1) >>>>>>>> >>>>>>>> On Tue, 13 Jul 2010, Rob Withers wrote: >>>>>>>> >>>>>>>>> -------------------------------------------------- >>>>>>>>> From: "Levente Uzonyi" <[hidden email]> >>>>>>>>> Sent: Tuesday, July 13, 2010 12:46 PM >>>>>>>>> To: "The general-purpose Squeak developers list" >>>>>>>>> <[hidden email]> >>>>>>>>> Subject: Cog on linux (was: Re: [squeak-dev] Re: UI lockup >>>>>>>>> in Squeak >>>>>>>>> 4.1) >>>>>>>>> >>>>>>>>>> On Tue, 13 Jul 2010, Rob Withers wrote: >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -------------------------------------------------- >>>>>>>>>>> From: "Andreas Raab" <[hidden email]> >>>>>>>>>>> Sent: Tuesday, July 13, 2010 11:29 AM >>>>>>>>>>> To: "The general-purpose Squeak developers list" >>>>>>>>>>> <[hidden email]> >>>>>>>>>>> Subject: [squeak-dev] Re: UI lockup in Squeak 4.1 >>>>>>>>>>> >>>>>>>>>>>> On 7/13/2010 6:39 AM, Rob Withers wrote: >>>>>>>>>>>>> >>>>>>>>>>>>> The low-space watcher is running, at least before the >>>>>>>>>>>>> problem >>>>>>>>>>>>> starts. >>>>>>>>>>>>> I >>>>>>>>>>>>> do eventually run out of memory, but the uninterruptable >>>>>>>>>>>>> state >>>>>>>>>>>>> happens >>>>>>>>>>>>> before this. >>>>>>>>>>>> >>>>>>>>>>>> In which case you want to do the following: >>>>>>>>>>>> * Launch your app and wait until it's in the "growing >>>>>>>>>>>> state" >>>>>>>>>>>> * Hit F2 and from the VM's preference menu choose "Debug" >>>>>>>>>>>> and then >>>>>>>>>>>> "Print all processes" >>>>>>>>>>>> >>>>>>>>>>>> This will dump a list of all the call stacks of all >>>>>>>>>>>> processes. One >>>>>>>>>>>> of >>>>>>>>>>>> them is the culprit consuming memory and you'll probably >>>>>>>>>>>> be able to >>>>>>>>>>>> tell >>>>>>>>>>>> quickly from just looking at it (if not, you can email >>>>>>>>>>>> the output >>>>>>>>>>>> here but >>>>>>>>>>>> it typically takes a domain expert to understand what's >>>>>>>>>>>> going >>>>>>>>>>>> wrong). >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Thanks for this pointer, Andreas. >>>>>>>>>>> >>>>>>>>>>> This time it was a Cog VM which spasmed, which I use for >>>>>>>>>>> my client >>>>>>>>>>> (Squeak 4.1 for server for use with linux vm - I have no >>>>>>>>>>> ability to >>>>>>>>>>> compile >>>>>>>>>>> a linux Cog vm: would love if someone posted one that >>>>>>>>>>> could be >>>>>>>>>>> launched >>>>>>>>>>> headless for my webhost). >>>>>>>>>> >>>>>>>>>> Cog works, but i think you're trying to use the -headless >>>>>>>>>> switch, >>>>>>>>>> which >>>>>>>>>> (is deprecated) and tells the vm to use the X11 display, >>>>>>>>>> but with no >>>>>>>>>> window. >>>>>>>>>> Servers usually don't have X11, so it won't work. You >>>>>>>>>> better use >>>>>>>>>> -vm-display-null (and -vm-sound-null). Try squeak --help >>>>>>>>>> for further >>>>>>>>>> useful >>>>>>>>>> options (like tuning Cog). >>>>>>>>>> >>>>>>>>> >>>>>>>>> I am trying to use the -headless switch. Good to know it is >>>>>>>>> deprecated. >>>>>>>>> So you happen to have a Cog for linux binary (version 17 - >>>>>>>>> 20), which >>>>>>>>> I >>>>>>>>> could use? >>>>>>>> >>>>>>>> I have one, but I'm not sure it will work on your server. You >>>>>>>> can find >>>>>>>> it >>>>>>>> here: http://leves.web.elte.hu/squeak/cog17.tar.gz . It's >>>>>>>> built on >>>>>>>> ubuntu >>>>>>>> 10.04 and is optimized for core2. >>>>>>>> >>>>>>>> >>>>>>>> Levente >>>>>>>> >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> Rob >>>>>>>>> >>>>>>>>>> >>>>>>>>>> Levente >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> It started running at 100% and I did your F2 -> Debug >>>>>>>>>>> Options -> >>>>>>>>>>> all processes. It started dumping a LOT to the Debug >>>>>>>>>>> Console, then >>>>>>>>>>> it >>>>>>>>>>> froze, still at 100%, but no increase in memory now and it >>>>>>>>>>> went (Not >>>>>>>>>>> Responding) and greyed out the window. >>>>>>>>>>> >>>>>>>>>>> Luckily, I was able to see enough of the stack that was >>>>>>>>>>> causing >>>>>>>>>>> problems. It is infinitely looping in this method: >>>>>>>>>>> >>>>>>>>>>> LanguageEnvironment class>>#localeID: localeID >>>>>>>>>>> ^self knownEnvironments at: localeID ifAbsent: [self >>>>>>>>>>> localeID: >>>>>>>>>>> (LocaleID isoLanguage: 'en')] >>>>>>>>>>> >>>>>>>>>>> This has nothing to do with my code, except I must be >>>>>>>>>>> calling >>>>>>>>>>> something >>>>>>>>>>> that enters this loop. It happens in both Cog (Windows) and >>>>>>>>>>> Squeak4.1 >>>>>>>>>>> (Linux <headless> and Windows). >>>>>>>>>>> >>>>>>>>>>> Not sure how to fix this. >>>>>>>>>>> >>>>>>>>>>> Rob >>>>>>>>>>> >>>>>>>>>>>> Cheers, >>>>>>>>>>>> - Andreas >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>>> >>>> >>> >> > -- Tom Rushworth |
In reply to this post by Levente Uzonyi-2
On 07/14/10 21:53, Levente Uzonyi wrote:
> [snip] > That's really strange, because I succesfully built Cog on Ubuntu 10.4 > and it works fine. Today I even managed to compile the plugin for FFI > and Alien (thought none of them works :)) and the UUIDPlugin. I also > fixed the cryptography plugins, those work well (at least the tests > pass). > Back to your problem: after compiling I only have vm-display-X11, but > no vm-display-X11.so. Are you sure you're not mixing the files/VMMaker > of the CogVM and the SqueakVM? > Levente Can you send me your Crypto plugin fixes so I can merge them into squeaksource? Thanks! David |
On Thu, 15 Jul 2010, C. David Shaffer wrote:
> On 07/14/10 21:53, Levente Uzonyi wrote: >> [snip] >> That's really strange, because I succesfully built Cog on Ubuntu 10.4 >> and it works fine. Today I even managed to compile the plugin for FFI >> and Alien (thought none of them works :)) and the UUIDPlugin. I also >> fixed the cryptography plugins, those work well (at least the tests >> pass). >> Back to your problem: after compiling I only have vm-display-X11, but >> no vm-display-X11.so. Are you sure you're not mixing the files/VMMaker >> of the CogVM and the SqueakVM? >> Levente > > Can you send me your Crypto plugin fixes so I can merge them into > squeaksource? Thanks! Sure, but there's a conflict that has to be resolved first. DSAPlugin is included in both VMMaker and CryptographyPlugins. I think it'd be better to remove it from CryptographyPlugins. Levente > > David > > > |
-------------------------------------------------- From: "Levente Uzonyi" <[hidden email]> Sent: Thursday, July 15, 2010 2:58 PM To: "The general-purpose Squeak developers list" <[hidden email]> Subject: Re: [squeak-dev] Re: Cog bugs (was Re: Cog on linux > On Thu, 15 Jul 2010, C. David Shaffer wrote: > >> On 07/14/10 21:53, Levente Uzonyi wrote: >>> [snip] >>> That's really strange, because I succesfully built Cog on Ubuntu 10.4 >>> and it works fine. Today I even managed to compile the plugin for FFI >>> and Alien (thought none of them works :)) and the UUIDPlugin. I also >>> fixed the cryptography plugins, those work well (at least the tests >>> pass). >>> Back to your problem: after compiling I only have vm-display-X11, but >>> no vm-display-X11.so. Are you sure you're not mixing the files/VMMaker >>> of the CogVM and the SqueakVM? >>> Levente >> >> Can you send me your Crypto plugin fixes so I can merge them into >> squeaksource? Thanks! > > Sure, but there's a conflict that has to be resolved first. DSAPlugin is > included in both VMMaker and CryptographyPlugins. I think it'd be better > to remove it from CryptographyPlugins. > I would prefer all CryptographyPlugins' plugins go into VMMaker. Rob > > Levente > >> >> David >> >> >> > |
In reply to this post by cdavidshaffer
On Thu, 15 Jul 2010, C. David Shaffer wrote:
> On 07/14/10 21:53, Levente Uzonyi wrote: >> [snip] >> That's really strange, because I succesfully built Cog on Ubuntu 10.4 >> and it works fine. Today I even managed to compile the plugin for FFI >> and Alien (thought none of them works :)) and the UUIDPlugin. I also >> fixed the cryptography plugins, those work well (at least the tests >> pass). >> Back to your problem: after compiling I only have vm-display-X11, but >> no vm-display-X11.so. Are you sure you're not mixing the files/VMMaker >> of the CogVM and the SqueakVM? >> Levente > > Can you send me your Crypto plugin fixes so I can merge them into > squeaksource? Thanks! I uploaded it to http://leves.web.elte.hu/cryptography/CryptographyPlugins-ul.2.mcz . I think the current VMMaker for SqueakVM support pragma declarations, but I'm not sure. If it doesn't, then some changes will have to be reverted. The VMMaker of CogVM is unhappy with the old message-style declarations (#var:type: #var:declareC: #export: etc.). Levente > > David > > > |
On Wed, Jul 21, 2010 at 01:45:13AM +0200, Levente Uzonyi wrote:
> On Thu, 15 Jul 2010, C. David Shaffer wrote: > > > >Can you send me your Crypto plugin fixes so I can merge them into > >squeaksource? Thanks! > > I uploaded it to > http://leves.web.elte.hu/cryptography/CryptographyPlugins-ul.2.mcz > . I think the current VMMaker for SqueakVM support pragma declarations, > but I'm not sure. If it doesn't, then some changes will have to be > reverted. The VMMaker of CogVM is unhappy with the old message-style > declarations (#var:type: #var:declareC: #export: etc.). The current VMMaker for SqueakVM does not use or support pragmas (method annotations). Converting to pragmas makes VMMaker unloadable in older Squeak images. It should be feasible to have the Cog VMMaker handle message send declarations (although I have not tried), but the reverse may not be supportable. If that is the case, then plugins that are intended for use on both SqueakVM and Cog would need to use message-based declarations, at least until such time as we decide to move SqueakVM to use method annotations. Follow-up discussion concerning method annotations in SqueakVM and Cog VMMaker is probably best moved to the vm-dev list. Dave |
Free forum by Nabble | Edit this page |