[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] Problem linking Linux Sound Library (#360)

karl ramberg karlramberg at gmail.com
Sun Jan 27 13:46:14 UTC 2019


But if I do SoundPlayer primGetDefaultSoundPlayer the VM segfaults. It not
the newest VM.



Segmentation fault Sun Jan 27 14:42:11 2019


/home/karl/Squeak5.3/bin/squeak
Squeak VM version: 5.0-201810190412  Sat Oct 20 08:15:47 UTC 2018 gcc 4.8
[Production Spur 64-bit VM]
Built from: CoInterpreter VMMaker.oscog-eem.2461 uuid:
b3cd33f5-6309-43a1-b669-7a1805111f34 Oct 20 2018
With: StackToRegisterMappingCogit VMMaker.oscog-eem.2464 uuid:
0b1fa0a3-a781-4fd5-b1cf-1809796ccbbf Oct 20 2018
Revision: VM: 201810190412
https://github.com/OpenSmalltalk/opensmalltalk-vm.git
Date: Thu Oct 18 21:12:21 2018 CommitHash: 15341b57
Plugins: 201810190412 https://github.com/OpenSmalltalk/opensmalltalk-vm.git
Build host: Linux travis-job-7e855ac8-57b9-4f6f-bf30-fd6e0ad67398
4.4.0-101-generic #124~14.04.1-Ubuntu SMP Fri Nov 10 19:05:36 UTC 2017
x86_64 x86_64 x86_64 GNU/Linux
plugin path: /home/karl/Squeak5.3/bin/ [default: /home/karl/Squeak5.3/bin/]


C stack backtrace & registers:
    rax 0xba4a0580 rbx 0xba4a0410 rcx 0xba4a0638 rdx 0xba4a04c8
    rdi 0xba4a01e8 rsi 0xba4a01e8 rbp 0xba4a0358 rsp 0xba4a06f0
    r8  0xba49fc28 r9  0xba49fce0 r10 0xba49fd98 r11 0xba49fe50
    r12 0xba49ff08 r13 0xba49ffc0 r14 0xba4a0078 r15 0xba4a0130
    rip 0xba4a07a8
*[0x7ffdba4a07a8]
/home/karl/Squeak5.3/bin/squeak[0x41b767]
/home/karl/Squeak5.3/bin/squeak[0x41d1ee]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12890)[0x7f7d0e567890]
/lib/x86_64-linux-gnu/libc.so.6(+0xb16b4)[0x7f7d0e2156b4]
/home/karl/Squeak5.3/bin/squeak[0x528373]
/home/karl/Squeak5.3/bin/squeak[0x458e94]
/home/karl/Squeak5.3/bin/squeak[0x45a4fb]
/home/karl/Squeak5.3/bin/squeak(ceSendsupertonumArgs+0x289)[0x45cb59]
[0x16000bb]
[0x0]


Smalltalk stack dump:
    0x7ffdba4affc0 M UndefinedObject>DoIt 0x1fe78e0: a(n) UndefinedObject
    0x7ffdba4b0018 I Compiler>evaluateCue:ifFail: 0x1c42888: a(n) Compiler
    0x7ffdba4b0070 I Compiler>evaluateCue:ifFail:logged: 0x1c42888: a(n)
Compiler
    0x7ffdba4b00c8 I
Compiler>evaluate:in:to:environment:notifying:ifFail:logged: 0x1c42888:
a(n) Compiler
    0x7ffdba4bfbc8 M [] in
SmalltalkEditor(TextEditor)>evaluateSelectionAndDo: 0x4e28178: a(n)
SmalltalkEditor
    0x7ffdba4bfc00 M BlockClosure>on:do: 0x1c42838: a(n) BlockClosure
    0x7ffdba4bfc68 I SmalltalkEditor(TextEditor)>evaluateSelectionAndDo:
0x4e28178: a(n) SmalltalkEditor
    0x7ffdba4bfcb0 I SmalltalkEditor(TextEditor)>printIt 0x4e28178: a(n)
SmalltalkEditor
    0x7ffdba4bfce0 M SmalltalkEditor(TextEditor)>printIt: 0x4e28178: a(n)
SmalltalkEditor
    0x7ffdba4bfd28 M SmalltalkEditor(TextEditor)>dispatchOnKeyboardEvent:
0x4e28178: a(n) SmalltalkEditor
    0x7ffdba4bfd60 M SmalltalkEditor(TextEditor)>keyStroke: 0x4e28178: a(n)
SmalltalkEditor
    0x7ffdba4bfda0 M [] in TextMorphForEditView(TextMorph)>keyStroke:
0x47860d0: a(n) TextMorphForEditView
    0x7ffdba4bfde8 M
TextMorphForEditView(TextMorph)>handleInteraction:fromEvent: 0x47860d0:
a(n) TextMorphForEditView
    0x7ffdba4bfe28 M TextMorphForEditView>handleInteraction:fromEvent:
0x47860d0: a(n) TextMorphForEditView
    0x7ffdba4bfe78 M [] in TextMorphForEditView(TextMorph)>keyStroke:
0x47860d0: a(n) TextMorphForEditView
    0x7ffdba4bfea8 M StandardToolSet
class>codeCompletionAround:textMorph:keyStroke: 0x23c1a20: a(n)
StandardToolSet class
    0x7ffdba4bfef0 M ToolSet
class>codeCompletionAround:textMorph:keyStroke: 0x23ba028: a(n) ToolSet
class
    0x7ffdba4bff38 M TextMorphForEditView(TextMorph)>keyStroke: 0x47860d0:
a(n) TextMorphForEditView
    0x7ffdba4bff78 M TextMorphForEditView>keyStroke: 0x47860d0: a(n)
TextMorphForEditView
    0x7ffdba4bffb8 M TextMorphForEditView(Morph)>handleKeystroke:
0x47860d0: a(n) TextMorphForEditView
    0x7ffdba4bfff8 M TextMorphForEditView(TextMorph)>handleKeystroke:
0x47860d0: a(n) TextMorphForEditView
    0x7ffdba4c0030 M KeyboardEvent>sentTo: 0x1c3e7c8: a(n) KeyboardEvent
    0x7ffdba4c0070 M TextMorphForEditView(Morph)>handleEvent: 0x47860d0:
a(n) TextMorphForEditView
    0x7ffdba4c00a8 M TextMorphForEditView(Morph)>handleFocusEvent:
0x47860d0: a(n) TextMorphForEditView
    0x7ffdba4c00f0 M MorphicEventDispatcher>doHandlingForFocusEvent:with:
0x1c3d5b8: a(n) MorphicEventDispatcher
    0x7ffdba4b1af8 M MorphicEventDispatcher>dispatchFocusEvent:with:
0x1c3d5b8: a(n) MorphicEventDispatcher
    0x7ffdba4b1b38 M TextMorphForEditView(Morph)>processFocusEvent:using:
0x47860d0: a(n) TextMorphForEditView
    0x7ffdba4b1b78 M TextMorphForEditView(Morph)>processFocusEvent:
0x47860d0: a(n) TextMorphForEditView
    0x7ffdba4b1bc8 M [] in HandMorph>sendFocusEvent:to:clear: 0x2777490:
a(n) HandMorph
    0x7ffdba4b1c08 M BlockClosure>ensure: 0x1c3d4a0: a(n) BlockClosure
    0x7ffdba4b1c48 M KeyboardEvent(MorphicEvent)>becomeActiveDuring:
0x1c3cce8: a(n) KeyboardEvent
    0x7ffdba4b1c98 M [] in HandMorph>sendFocusEvent:to:clear: 0x2777490:
a(n) HandMorph
    0x7ffdba4b1cd8 M BlockClosure>ensure: 0x1c3d2d0: a(n) BlockClosure
    0x7ffdba4b1d18 M HandMorph>becomeActiveDuring: 0x2777490: a(n) HandMorph
    0x7ffdba4b1d68 M [] in HandMorph>sendFocusEvent:to:clear: 0x2777490:
a(n) HandMorph
    0x7ffdba4b1da8 M BlockClosure>ensure: 0x1c3d100: a(n) BlockClosure
    0x7ffdba4b1de8 M PasteUpMorph>becomeActiveDuring: 0x24a5640: a(n)
PasteUpMorph
    0x7ffdba4b1e30 M HandMorph>sendFocusEvent:to:clear: 0x2777490: a(n)
HandMorph
    0x7ffdba4b1e88 M HandMorph>sendEvent:focus:clear: 0x2777490: a(n)
HandMorph
    0x7ffdba4b1ed0 M HandMorph>sendKeyboardEvent: 0x2777490: a(n) HandMorph
    0x7ffdba4b1f10 M HandMorph>handleEvent: 0x2777490: a(n) HandMorph
    0x7ffdba4b1f68 M HandMorph>processEvents 0x2777490: a(n) HandMorph
    0x7ffdba4b1fa0 M [] in WorldState>doOneCycleNowFor: 0x269f738: a(n)
WorldState
    0x7ffdba4b1fe8 M Array(SequenceableCollection)>do: 0x200c708: a(n) Array
    0x7ffdba4b2020 M WorldState>handsDo: 0x269f738: a(n) WorldState
    0x7ffdba4b2060 M WorldState>doOneCycleNowFor: 0x269f738: a(n) WorldState
    0x7ffdba4b2098 M WorldState>doOneCycleFor: 0x269f738: a(n) WorldState
    0x7ffdba4b20d0 M PasteUpMorph>doOneCycle 0x24a5640: a(n) PasteUpMorph
    0x7ffdba4b2100 M [] in MorphicProject>spawnNewProcess 0x28b2df8: a(n)
MorphicProject
         0x4e313f0 s [] in BlockClosure>newProcess

Most recent primitives
at:put:
at:
at:put:
at:
at:put:
at:
at:put:
at:
at:put:
at:
at:put:
at:
at:put:
at:
at:put:
at:
at:put:
at:
at:put:
at:
at:put:
at:
at:put:
at:put:
at:put:
value:
value:
-
-
-
newFrom:
newFrom:
value
at:
at:
buildTreeFrom:maxDepth:
buildTreeFrom:maxDepth:
buildTreeFrom:maxDepth:
basicNew
basicNew
//
//
second
second
initialize
initialize
initialize
initialize
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
size
at:
size
at:
at:
at:put:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
value
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
bitLengthAt:
bitLengthAt:
bitLengthAt:
maxCode
maxCode
maxCode
maxCode
maxCode
maxCode
maxCode
maxCode
maxCode
maxCode
maxCode
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
value:value:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
bitPosition
bitPosition
bitPosition
on:from:to:
on:from:to:
at:
nextBits:put:
nextBits:put:
nextBits:put:
byteAt:put:
byteAt:put:
nextBytePut:
bitXor:
replaceFrom:to:with:startingAt:
encodeLengthField:
value
value
size
size
size
size
basicNew
perform:
size
newMethod:header:
size
at:
at:put:
at:
at:put:
at:
at:put:
objectAt:put:
objectAt:put:
objectAt:put:
objectAt:put:
at:
at:put:
at:
at:put:
at:
at:put:
basicNew
withArgs:executeMethod:
primGetDefaultSoundPlayer

stack page bytes 8192 available headroom 5576 minimum unused headroom 6032

    (Segmentation fault)
Aborted (core dumped)

On Sun, Jan 27, 2019 at 2:41 PM karl ramberg <karlramberg at gmail.com> wrote:

> Sound on Linux seem to be a mess.
> I'm on Ubuntu 18.04 and had no sound from Squeak.
> I got this error in the terminal: dev/dsp: No such file or directory
> I installed package osspd and that seem to solve the problem.
> (sudo apt-get install osspd)
>
> Best,
> Karl
>
>
> On Sat, Jan 26, 2019 at 12:18 AM Tobias Pape <notifications at github.com>
> wrote:
>
>>
>> > On 25.01.2019, at 23:32, Eliot Miranda <notifications at github.com>
>> wrote:
>> >
>> > Hi Tobias,
>> >
>> > On Fri, Jan 25, 2019 at 2:27 PM Tobias Pape <notifications at github.com>
>> > wrote:
>> >
>> > > That's besides the point here.
>> > >
>> > > The plugin would not have been built if the library was not present.
>> > > That's what the configure step is for.
>> > > The VM is origrinally from a travis and I made sure the lib is there:
>> > >
>> https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/scripts/ci/travis_install.sh#L15
>> > > (thats the dev lib that depends on the real one:
>> > > https://packages.ubuntu.com/xenial/libpulse-dev)
>> > >
>> >
>> > So how come it isn't linked against libpulse-simple.so ?
>>
>> I have not the slightest idea and, atm, no linux at hand.
>> We (ie, maybe, @ekrebs5 or @fniephaus) have to look wether this stems
>> from here or https://github.com/squeak-smalltalk/squeak-app .
>> On macOS we have rpath issues that can come out like this and might be
>> sensitive to be moved around…
>>
>> Here we see that the lib is added in configure:
>> https://travis-ci.org/OpenSmalltalk/opensmalltalk-vm/jobs/483526374#L1071
>>
>> And here we see that the squeak _binary_ is actually linked agains
>> libpulse-simple:
>>
>> https://travis-ci.org/OpenSmalltalk/opensmalltalk-vm/jobs/483526374#L3455
>>
>> That is ok, since the dynloaded vm-sound-pulse can lookup in its loading
>> process, which (being squeak being linked against libpulse-simple) should
>> have the syms.
>>
>> Accordingly we see the plugin not begin linked against the lib:
>> https://travis-ci.org/OpenSmalltalk/opensmalltalk-vm/jobs/483526374#L4111
>>
>> The rest is libtool chitter-chat that i cannot understand so quick…
>>
>> >
>> > > All of the respecitve sound plugins are optional, and absence is
>> expected.
>> > >
>> >
>> > Not for a build slave, surely. Shouldn't;t the build slave build all
>> > possible variants? If we're providing prebuilt VMs (for good reason)
>> then
>> > we have to build what we support. Things like vm-display-fbdev may be
>> > something we can not support and leave to individuals to build if they
>> want
>> > to. But vm-sound-pulse is not in that category.
>>
>> Did not say that. all the vm-*-* plugins seem to care for optionality.
>> and IIRC it is nigh impossible to build for some combinations to be built
>> with the same package set (NAS + OSS or some OSS/ALSA combos, but my memory
>> is foggy there).
>>
>> In fact, I tried to make sure as many as possible plugins to be buildable
>> on Travis:
>>
>> https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/698661a94af388b06b98b11d9d2a4216b36acdb5#diff-852da479861e8f719725fb8018cc1699R5
>>
>> https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/989f7e06d041c145863dd2d648e196a3169947d4#diff-eaec0bdb68c02946e8335228ebbbbad9
>>
>>
>> https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/75f59c456f79fb4f7ca64bc1d2504d3f9626e305
>>
>> https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/ca75c6bfd0903f25917b8b88aca63e574dd39a1f
>>
>> https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/a82b9cfdcf2f8d5396fa2f6950a06f35c374098d
>>
>> https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/3a8a3c4bb7033c0e19c714ca4d90b0cc8f9f2565
>>
>> Point is: yes, I really tried to make sure the build slave builds
>> everything necessary.
>>
>>
>> -t
>>
>>
>> >
>> > _,,,^..^,,,_
>> > best, Eliot
>> > —
>> > You are receiving this because you were mentioned.
>> > Reply to this email directly, view it on GitHub, or mute the thread.
>> >
>>
>>>> You are receiving this because you commented.
>> Reply to this email directly, view it on GitHub
>> <https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/360#issuecomment-457768165>,
>> or mute the thread
>> <https://github.com/notifications/unsubscribe-auth/AhLyW3k2M4o7CI3NLORKSlN_QTCLBc5Aks5vG5DLgaJpZM4aS083>
>> .
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20190127/8df21782/attachment-0001.html>


More information about the Vm-dev mailing list