WSL2でsketchを使う手順
Windows11のWSL2でsketchを動かすまでの手順をメモ
Sketch is a Common Lisp environment for the creation of electronic art, visual design, game prototyping, game making, computer graphics, exploration of human-computer interaction and more. It is inspired by Processing Language and shares some of the API.
Power Shell on Windows 11
wsl --update #もしくは wsl --install wsl --set-default-version 2 #wsl -l -oで選択できるディストリビューションを表示 wsl --install -d Ubuntu-22.04 wls -l -v #VERSIONが2になっていることを確認
sudo apt update sudo apt upgrade #WSLgの動作チェック sudo apt install x11-apps xeyes & #SBCLとQuickLispのインストール sudo apt install curl sbcl # Quicklispをインストール: 参照 [https://www.quicklisp.org/beta/] #Sketchの依存ライブラリのインストール #quickloadしてみて、エラーが出るたびに順に解決して行っても良い sudo apt install libgl1 libsdl2-2.0-0 libsdl2-image-2.0-0 libffi-dev build-essential libsdl2-ttf-2.0-0 mesa-utils glxgears #Open GLの動作確認 sbcl --load "quicklisp/setup.lisp"
(ql:quickload :sketch) (ql:quickload :sketch-examples) (in-package :sketch-examples) (make-instance 'hello-world)
おそらくここで、Could not create GL contextとか言われる。
(kit.sdl2:init) (make-instance 'hello-world)
これでOperation not supported.とか言われたら、
~/quicklisp/dists/quicklisp/software/sketch-(version)-git/src/environment.lispを編集
(defun initialize-gl (w) (with-slots ((env %env) width height) w ;;(sdl2:gl-set-swap-interval 1) ;;この行をコメントアウト (setf (kit.sdl2:idle-render w) t) (gl:viewport 0 0 width height) (gl:enable :blend :line-smooth :polygon-smooth) ... ))
リトライ
(kit.sdl2:init) (make-instance 'hello-world)
これでうまくいくんじゃないかな?