Skip to content

Cannot run sequential "hello-world" examples #185

Description

@mirkov

First time sketch user on a remote ubuntu+sbcl (ros + emacs + spacemacs + slime) machine in a company environment (where I don't have administrator access, but can request support). I access the machine using Windows Remote Desktop

I installed the required SDL2 and SDL-TTF libraries locally, and the following works:

  • glxgears
  • sdl2kit examples
  • sdl2 examples

with a caveat: In both libraries running examples triggers SDL Error (-1): dsp: "No such audio device" error. Continuing from the debugger, the examples are running. Important for follow-up on sketch, when setting SDL_AUDIODRIVER to dummy clears the error and the examples run.

Now in Sketch, there are two scenarios for running "hello-world"

Scenario 1, leave SDL_AUDIODRIVER as blank
Running "hello-world" triggers two errors and one warning. I continue past the errors in the debugger

  • SDL Error (-1): dsp: "No such audio device"
  • SDL Error (-1): "Video subsystem has not been initialized"
  • Warning: VSYNC was not enabled; frame rate was not restricted to 60fps

After continuing past the two errors I observe:

  1. hello-world window appears.
  2. After I kill the hello-world window, I cannot launch another one. I get a hanging repl, from which I have to break C-c C-b.

Scenario2, set SDL_AUDIODRIVER to "dummy"
Running "hello-world" triggers SDL Error: Couldn't find matching GLX visual. Selecting 0: [CONTINUE] Return to the SDL2 main loop., I get a #<SKETCH-EXAMPLES:HELLO-WORLD {120542E7F3}> at the REPL, but no window appears.

Questions
I am extremely unfamiliar with the graphics environment - this may explain some of my questions.

  • What is the correct way to kill the "hello world" window? Pressing the Escape key or clicking on the x on the window works. Is that correct way?
  • Are there recommended environment variables that need to be set-up for Sketch, and which are they (considering that sdlkit and sdl2 library examples worked in my current environment)
  • I set my environment within Slime with (sb-posix:setenv ...) before launching Sketch at the REPL. Should I do it from the terminal before starting Emacs?

I post below my graphics card and OpenGL info and thank you for your comments and help.

===== GPU =====
61:00.1 VGA compatible controller: Matrox Electronics Systems Ltd. MGA G200eH3 (rev 03)
82:00.0 3D controller: NVIDIA Corporation AD104GL [L4] (rev a1)

===== OPENGL =====
OpenGL vendor string: Mesa
OpenGL renderer string: llvmpipe (LLVM 21.1.8, 256 bits)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 26.0.3-1ubuntu1
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.5 (Compatibility Profile) Mesa 26.0.3-1ubuntu1
OpenGL shading language version string: 4.50
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 26.0.3-1ubuntu1
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:

===== SESSION =====
XDG_SESSION_TYPE=x11
DISPLAY=:12.0

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions