On 09-05-2012 19:25, Schwab,Wilhelm K wrote: > Even on Ubuntu, the library search is broken. I've had to create > symlinks in the vm directory to get Cog to see much of anything. Are > you using callbacks? I tried them, with some success, but ultimately > went back to using a C/C++ .so to export needed functions. The > callbacks were "working" and I could step through them with the > debugger ( very encouraging and useful!!!!), but ultimately I would > get one of a couple of downstream errors after the callback activity > was over, or so it seemed. > > Is your image crashing as part of this? > > > > ------------------------------------------------------------------------ > *I tried both ways with native (pre-compiled VMs) and VMs that I compiled myself. Native CogVM fails but won't crash. The same with native SqueakVM (traditional VM). CogVM won't compile 64bit mode. SqueakVM compiles 64bit mode and then is capable of calling /usr/lib64 stuff. But most stuff will crash due to problems with pointer sizes. I've got crashes like:
*bash-4.2$ LD_LIBRARY_PATH=/usr/lib/nvidia:/usr/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH bash-4.2$ /usr/local/lib/squeak/*/squeakvm Segmentation fault 36490628 OpenGL>beginFrame 36490536 OGLUnixX11LE>beginFrame 36488076 OpenGL class>example 36487984 BlockClosure>ensure: 36418764 OpenGL class>example 36418672 UndefinedObject>? 35844976 Compiler>evaluate:in:to:notifying:ifFail:logged: 35846456 TextEditor>evaluateSelectionAndDo: 35846364 BlockClosure>on:do: 35846272 TextEditor>evaluateSelectionAndDo: 35846180 TextEditor>evaluateSelection 35846088 PluggableTextMorph>doIt 35845952 TextMorph>handleEdit: 35845736 PluggableTextMorph>handleEdit: 35845644 PluggableTextMorph>doIt 35845528 StringHolder>perform:orSendTo: 35845412 MenuItemMorph>invokeWithEvent: 35845320 BlockClosure>ensure: 35845228 Cursor>showWhile: 35844776 MenuItemMorph>invokeWithEvent: 35844684 MenuItemMorph>mouseUp: 35844592 MenuItemMorph>handleMouseUp: 35844460 MouseButtonEvent>sentTo: 35844368 Morph>handleEvent: 35844276 MorphicEventDispatcher>dispatchDefault:with: 35844184 MorphicEventDispatcher>dispatchEvent:with: 35844092 Morph>processEvent:using: 35844000 MorphicEventDispatcher>dispatchDefault:with: 35843892 MorphicEventDispatcher>dispatchEvent:with: 35843760 Morph>processEvent:using: 35843668 Morph>processEvent: 35843576 MenuMorph>handleFocusEvent: 35843484 HandMorph>sendFocusEvent:to:clear: 35843328 BlockClosure>on:do: 35843236 PasteUpMorph>becomeActiveDuring: 35843116 HandMorph>sendFocusEvent:to:clear: 35843024 HandMorph>sendEvent:focus:clear: 35842932 HandMorph>sendMouseEvent: 35842788 HandMorph>handleEvent: 35842444 HandMorph>processEvents 35842352 WorldState>doOneCycleNowFor: 35842260 SequenceableCollection>do: 35842168 WorldState>handsDo: 35842076 WorldState>doOneCycleNowFor: 35841892 WorldState>doOneCycleFor: 35841800 WorldState>doOneSubCycleFor: 35841708 PasteUpMorph>doOneSubCycle 35821636 MenuMorph>invokeModalAt:in:allowKeyboard: 35821544 MenuMorph>invokeModal: 35821440 MenuMorph>invokeModal 35814024 PluggableTextMorph>yellowButtonActivity: 35813932 ScrollPane>mouseDown: 35813840 Morph>handleMouseDown: 35813748 MouseButtonEvent>sentTo: 35813656 Morph>handleEvent: 35813484 MorphicEventDispatcher>dispatchMouseDown:with: 35813392 MorphicEventDispatcher>dispatchEvent:with: 35813300 Morph>processEvent:using: 35813168 MorphicEventDispatcher>dispatchMouseDown:with: 35813076 MorphicEventDispatcher>dispatchEvent:with: 35812984 Morph>processEvent:using: 35812892 MorphicEventDispatcher>dispatchMouseDown:with: 35812800 MorphicEventDispatcher>dispatchEvent:with: 35812692 Morph>processEvent:using: 35812600 PasteUpMorph>processEvent:using: 35812488 Morph>processEvent: 35812396 HandMorph>sendEvent:focus:clear: 35812304 HandMorph>sendMouseEvent: 35812160 HandMorph>handleEvent: 35812000 HandMorph>processEvents 35811908 WorldState>doOneCycleNowFor: 35811816 SequenceableCollection>do: 35811724 WorldState>handsDo: 35811632 WorldState>doOneCycleNowFor: 35811540 WorldState>doOneCycleFor: 35811448 PasteUpMorph>doOneCycle 31204620 Project class>spawnNewProcess 31201020 BlockClosure>newProcess* But it was expected since it was a 64bit VM pointing to 32bit libraries... When LD_LIBRARY_PATH is left unchanged, then it won't crash and it won't load libraries. *
