malcolmstill / ulubis

A Wayland compositor written in Common Lisp
BSD 3-Clause "New" or "Revised" License
239 stars 19 forks source link

ulubis build with ulubis-drm-gbm exits 0 while doing nothing #24

Open AeroNotix opened 7 years ago

AeroNotix commented 7 years ago

(build process needs documenting way better btw)

malcolmstill commented 7 years ago

Can you give me the output sh build-ulubis.sh?

(issue needs way better information btw)

AeroNotix commented 7 years ago

I don't need the snark.

malcolmstill commented 7 years ago

Ah go on, what's the output from sh build-ulubis.sh?

I promise that a) I won't attempt to make any more jokes and b) I'm not that terrible of a person :)

AeroNotix commented 7 years ago
  1. There isn't a build-ulubis.sh file in the release or in the git repo
    cd ulubis-0-2
    ulubis-0.2 sh build-ulubis.sh
    sh: build-ulubis.sh: No such file or directory
    cd build
    sh build-ulubis.sh
    ulubis-0.2/build sh build-ulubis.sh
    sh: build-ulubis.sh: No such file or directory

There are the other files and they generate binaries from running them. Not sure why you are referencing build-ulubis.sh when it doesn't seem to exist.

Here is running build/build-ulubis-sdl.sh

ulubis-0.2 sh ./build/build-ulubis-sdl.sh
This is SBCL 1.3.15, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses.  See the CREDITS and COPYING files in the
distribution for more information.
* To load "ulubis-sdl":
  Load 1 ASDF system:
    ulubis-sdl
; Loading "ulubis-sdl"
..................................................
...............
; recompile cpu side of (DRAW-TEXTURE-PIPELINE ...)
; recompile cpu side of (DRAW-COLORED-QUAD-PIPELINE ...)
.............
; recompile cpu side of (PASSTHROUGH-SHADER ...)
..
; recompile cpu side of (ULUBIS-CURSOR-PIPELINE ...)
; recompile cpu side of (CURSOR-PIPELINE ...)
.
; recompile cpu side of (MAPPING-PIPELINE ...)
; recompile cpu side of (ALT-TAB-PIPELINE ...)

(:ULUBIS-SDL)
* [undoing binding stack and other enclosing state... done]
[defragmenting immobile space... 2050+31975+38883+37685 objects... done]
[saving current Lisp image into ulubis-sdl:
writing 4816 bytes from the read-only space at 0x20000000
writing 15520 bytes from the static space at 0x20100000
writing 3448832 bytes from the immobile space at 0x20300000
writing 21672992 bytes from the immobile space at 0x21b00000
writing 76709888 bytes from the dynamic space at 0x1000000000
done]

Running build/ulubis-sdl:

It works, kind of, a grey box appears where my mouse pointer can move in a small rectangle. If I go outside an area then my pointer disappears. I am running this in XMonad and I know that there are some issues with some programs when running inside XMonad.

Trying to C-c out of the build/ulubis-sdl terminal invokes the debugger:

/ulubis-0.2 ./build/ulubis-sdl 
New context v4.5
-----------------
    CEPL-REPL    
-----------------
; uploading (MAPPING-PIPELINE ...)
Opened socket: wayland-0
; uploading (PASSTHROUGH-SHADER ...)
; uploading (CURSOR-PIPELINE ...)
Key down: 64
^C
debugger invoked on a SB-SYS:INTERACTIVE-INTERRUPT in thread
#<THREAD "main thread" RUNNING {100492E9E3}>:
  Interactive interrupt at #x7FFFF71CC67D.

Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name):
  0: [CONTINUE] Return from SB-UNIX:SIGINT.

("bogus stack frame")
0] (quit)
; No debug variables for current frame: using EVAL instead of EVAL-IN-FRAME.

Building with build/build-ulubis-drm-gbm.sh:

ulubis-0.2 sh ./build/build-ulubis-drm-gbm.sh
This is SBCL 1.3.15, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses.  See the CREDITS and COPYING files in the
distribution for more information.
* To load "ulubis-drm-gbm":
  Load 1 ASDF system:
    ulubis-drm-gbm
; Loading "ulubis-drm-gbm"
..................................................
..................
; recompile cpu side of (DRAW-TEXTURE-PIPELINE ...)
; recompile cpu side of (DRAW-COLORED-QUAD-PIPELINE ...)
...........
; recompile cpu side of (PASSTHROUGH-SHADER ...)
..
; recompile cpu side of (ULUBIS-CURSOR-PIPELINE ...)
; recompile cpu side of (CURSOR-PIPELINE ...)
.
; recompile cpu side of (MAPPING-PIPELINE ...)
.
; recompile cpu side of (ALT-TAB-PIPELINE ...)
.
(:ULUBIS-DRM-GBM)
* Building ulubis with DRM backend
NIL
* [undoing binding stack and other enclosing state... done]
[defragmenting immobile space... 1957+30611+38040+36310 objects... done]
[saving current Lisp image into ulubis:
writing 4816 bytes from the read-only space at 0x20000000
writing 15824 bytes from the static space at 0x20100000
writing 3342336 bytes from the immobile space at 0x20300000
writing 20925456 bytes from the immobile space at 0x21b00000
writing 74022912 bytes from the dynamic space at 0x1000000000
done]

Running build/ulubis:

Will edit this in in a second.

  1. The dependencies need to be installed manually, I did this a couple of weeks ago and can't remember which ones I installed my self but largely they were your own projects that weren't in quicklisp.

malcolmstill commented 7 years ago

I think I may have uploaded the wrong zip. Also make sure you download the ulubis-release*.zip rather than the source code.

I have reuploaded the v0.2 release zip so try downloading that again.

malcolmstill commented 7 years ago

I'm on the train right now but will look at the rest of your comment when I'm back home.

Apologies again for my earlier comment, thank you for coming back.

malcolmstill commented 7 years ago

Oh and I will release a v0.3 soon after I've merged naryl's changes...will then have a nice shiny new cursor

naryl commented 7 years ago

We should probably catch SIGINT to call uiop:quit.

ulubis built with drm-gbm doesn't work on my laptop either. Looks like cepl has troubles creating context. May be because it only has Intel drivers.

AeroNotix commented 7 years ago

FWIW I am running the Intel drivers here.

malcolmstill commented 7 years ago

I need to check if any updates to CEPL have become incompatible with ulubis (I'm probably running a version of CEPL from, say, October/November time.

malcolmstill commented 6 years ago

I've updated build instructions (basically make sure everything is in quicklisp/local-projects and run sbcl --eval ("build-ulubis.lisp").

I've made some changes so that ulubis works with the latest CEPL so it might just work for you.