追記(最新2/17)と進捗
Windows上の導入は諦め、仮想環境OSを立ててそこにインストールを試みることにしました。
VirtualBoxにLinux Mint Mateを立て、同様に
①haskell(stackを用いる)の導入
②haskellにtidalcyclesを導入
③supercolliderにsuperdirtを導入、起動
④エディタ(Atom or VScode)にtidalcyclesパッケージを導入、起動
の手順を実行しました。
以前と同じように、①②④は上手くいくのですが
エディタ上でいざ実行しようとするとエラーが出ます。
ただエラー文の文字化けは無くなったのでそこだけ進捗です。
以下Atomで.tidalファイルを実行しようとしたときのエラー文です。
Custom ghci path configured: stack exec --package tidal -- ghci Ghci command: stack exec --package tidal -- ghci Ghc-pkg command: stack exec --package tidal -- ghc-pkg Load BootTidal.hs from /home/username/.atom/packages/tidalcycles/lib/BootTidal.hs /bin/sh: 1: stack exec --package tidal -- ghci: not found
パス名をstack exec ghciなどに変えてもほぼ同じでした。
コマンドが見つからないと怒られているわけですが、
端末上でstack exec --package tidal -- ghci等は普通に実行できます。
ここでよくわからなくなりました。
上のエラー文で/bin/shとあるのに対して端末のシェルがbashなのが関係ある?とかを疑いましたが(echo $SHELLで調べた)
適切ないじり方がわからず断念しました。
VScode上で実行しても、文字化けが消えるだけ⁺ちょっとの変化でした。
GHCi, version 8.6.5: http://www.haskell.org/ghc/ :? for help Loaded GHCi configuration from /tmp/haskell-stack-ghci/2a3bbd58/ghci-script Prelude> Prelude> Warning: GHCi | Warning: GHCi | <no location info>: error: Warning: GHCi | Could not find module ‘Sound.Tidal.Context’ Warning: GHCi | It is not a module in the current program, or in any known package. (中略) tidal> Warning: GHCi | Warning: GHCi | <interactive>:64:1: error: Variable not in scope: d1 :: t0 -> t Warning: GHCi | Warning: GHCi | <interactive>:64:6: error: Warning: GHCi | • Variable not in scope: sound :: [Char] -> t0 Warning: GHCi | • Perhaps you meant ‘round’ (imported from Prelude) tidal>
(追記ここまで)
前提・実現したいこと
Haskellのtidalcyclesを導入しようとしています。
OSはwindows10です。
発生している問題・エラーメッセージ
tidalcyclesの導入を、
①haskell(stackを用いる)の導入
②haskellにtidalcyclesを導入
③supercolliderにsuperdirtを導入、起動
④エディタ(Atom or VScode)にtidalcyclesパッケージを導入、起動
で行おうとしているのですが
いざ.tidalファイル上で実行しようとするとエラーを吐いて音が鳴りません。
例えばAtomの場合、
d1 $ sound "bd sn" ```を実行しようとすると下のように表示されます。 ```Tidalcycles Custom ghci path configured: stack exec --package tidal -- ghci Ghci command: stack exec --package tidal -- ghci Ghc-pkg command: stack exec --package tidal -- ghc-pkg Load BootTidal.hs from C:\Users\username.atom\packages\tidalcycles\lib\BootTidal.hs '"stack exec --package tidal -- ghci"' �́A�����R�}���h�܂��͊O���R�}���h�A ����\�ȃv���O�����܂��̓o�b�` �t�@�C���Ƃ��ĔF������Ă��܂���B
またエディタ上のエラーメッセージとして、
Uncaught Error: write EPIPE events.js:167 Hide Stack Trace Error: write EPIPE at afterWriteDispatched (internal/stream_base_commons.js:78:25) at writeGeneric (internal/stream_base_commons.js:73:3) at Socket._writeGeneric (net.js:713:5) at Socket._write (net.js:725:8) at doWrite (_stream_writable.js:410:12) at writeOrBuffer (_stream_writable.js:394:5) at Socket.Writable.write (_stream_writable.js:294:11) at Ghci.writeLine (file:///C:/Users/username/.atom/packages/tidalcycles/lib/ghci.js:20:24) at REPL.tidalSendLine (file:///C:/Users/username/.atom/packages/tidalcycles/lib/repl.js:127:17) at REPL.initTidal (file:///C:/Users/username/.atom/packages/tidalcycles/lib/repl.js:114:12) at REPL.start (file:///C:/Users/username/.atom/packages/tidalcycles/lib/repl.js:56:12) at REPL._eval (file:///C:/Users/username/.atom/packages/tidalcycles/lib/repl.js:137:30) at HTMLElement.tidalcyclesEvalMultiLine (file:///C:/Users/username/.atom/packages/tidalcycles/lib/repl.js:37:55) at CommandRegistry.handleCommandEvent (C:\Users\username\AppData\Local\atom\app-1.43.0\resources\app\static\<embedded>:11:349290) at KeymapManager.dispatchCommandEvent (C:\Users\username\AppData\Local\atom\app-1.43.0\resources\app\static\<embedded>:11:1253549) at KeymapManager.handleKeyboardEvent (C:\Users\username\AppData\Local\atom\app-1.43.0\resources\app\static\<embedded>:11:1249683) at WindowEventHandler.handleDocumentKeyEvent (C:\Users\username\AppData\Local\atom\app-1.43.0\resources\app\static\<embedded>:11:284496)
と表示されます。
試したこと
②supercolliderと、そこでのsuperdirtの導入に問題はないと思います。
(tidalcyclesのpythonバージョンみたいなものであるFoxDotを起動できて音を鳴らせていることと、supercolliderに
SuperDirt: listening to Tidal on port 57120
と表示させることができたことからそう判断してます)
①haskellの導入については、
一度いろいろよくわかんないことになったで
一端stack自体を全部消して再インストールを行いました。
(ここを見ながらやりました→ https://sites.google.com/site/toriaezuzakki/haskell/environment)
ここについても多分大丈夫だと思います。
なにやら怪しい雰囲気があるのが
②haskellにtidalcyclesを導入
の部分で、
インストール時にコマンドライン上で
>chcp 65001 #これをしないと途中で止まる >stack install tidal
としたところ、いろいろ表示された最後に
tidal > [19 of 19] Compiling Sound.Tidal.Context tidal > copy/register tidal > Installing library in C:\sr\snapshots\45e253ae\lib\x86_64-windows-ghc-8.6.5\tidal-1.4.8-C73GrwJ4T6M1yznor10hu tidal > Registering library for tidal-1.4.8.. Completed 24 action(s).
と表示されてインストール完了した感じが出ているのですが、
Troubleshooting a Tidal install(https://tidalcycles.org/index.php/Troubleshooting_a_Tidal_install)のページにある説明の通りに、GHCi上で
Prelude> import Sound.Tidal.Context
とすると
Prelude> import Sound.Tidal.Context <no location info>: error: Could not find module ‘Sound.Tidal.Context’ It is not a module in the current program, or in any known package.
と表示されます。
つまりtidalが入ってへんぞと怒られてしまいます。
ここで自分は???となってしまいました。
もう一度stack install tidalとしても特に何の反応もありません。
④のエディタ上の設定については、
AtomエディタにTidalcyclesパッケージを入れて、GHCi Pathの設定をstack exec --package tidal -- ghciに変更をしてからbootしています。実行結果は最初に書いたとおりです。GHCi Pathをstack exec tidalにするのも試しましたが似たような状況になりました。
VScode上でもUse stackにチェックを入れて試しましたが上手くいきませんでした。
以上です。どなたか詳しい方がおられましたらよろしくお願いします。
参考にしたページ
TidalCyclesをstackで確実にインストールする
https://haskell.jp/blog/posts/2019/tidalcycles-stack.html
とりあえず雑記帳
https://sites.google.com/site/toriaezuzakki/haskell/environment
Troubleshooting a Tidal install
https://tidalcycles.org/index.php/Troubleshooting_a_Tidal_install
TidalCyclesの環境設定をしたいです
https://teratail.com/questions/190623
追記
igrepさん
(1)
stack ghciで実行していました。
stack exec --package tidal -- ghciで実行したところ
C:\Users\username>stack exec --package tidal -- ghci GHCi, version 8.6.5: http://www.haskell.org/ghc/ :? for help Prelude> import Sound.Tidal.Context Prelude Sound.Tidal.Context>
となり上手くいきました。
(2)
VScode上での実行結果は以下のようになりました。
設定のUse stack ghciにチェックを入れた状態です。
GHCi Pathにstack exec --package tidal -- ghciを指定するのと何も指定しないのの二つを試しましたが同じ結果でした。
Warning: GHCi | 'stty' �́A�����R�}���h�܂��͊O���R�}���h�A Warning: GHCi | ����\�ȃv���O�����܂��̓o�b�` �t�@�C���Ƃ��ĔF������Ă��܂���B GHCi, version 8.6.5: http://www.haskell.org/ghc/ :? for help Loaded GHCi configuration from C:\Users\username\AppData\Local\Temp\haskell-stack-ghci\2a3bbd58\ghci-script Prelude> Prelude> Warning: GHCi | Warning: GHCi | <no location info>: error: Warning: GHCi | Could not find module �eSound.Tidal.Context�f Warning: GHCi | It is not a module in the current program, or in any known package. Warning: GHCi | Warning: GHCi | <interactive>:6:39: error: Not in scope: �eoLatency�f Warning: GHCi | Warning: GHCi | <interactive>:6:55: error: Not in scope: �eoAddress�f Warning: GHCi | Warning: GHCi | <interactive>:6:79: error: Not in scope: �eoPort�f Warning: GHCi | Warning: GHCi | <interactive>:6:111: error: Not in scope: �ecFrameTimespan�f Warning: GHCi | Warning: GHCi | <interactive>:21:38: error: Warning: GHCi | Not in scope: �eSound.Tidal.Transition.xfadeIn�f Warning: GHCi | No module named �eSound.Tidal.Transition�f is imported. Warning: GHCi | Warning: GHCi | <interactive>:22:42: error: Warning: GHCi | Not in scope: �eSound.Tidal.Transition.xfadeIn�f Warning: GHCi | No module named �eSound.Tidal.Transition�f is imported. Warning: GHCi | (本文の字数制限により中略) t1 -> t Warning: GHCi | Warning: GHCi | <interactive>:59:23: error: Variable not in scope: tidal Warning: GHCi | Warning: GHCi | <interactive>:60:12: error: Warning: GHCi | Variable not in scope: streamSetB :: t0 -> t Warning: GHCi | tidal> Warning: GHCi | <interactive>:60:23: error: Variable not in scope: tidal Warning: GHCi | Warning: GHCi | <interactive>:64:1: error: Variable not in scope: d1 :: t0 -> t Warning: GHCi | Warning: GHCi | <interactive>:64:6: error: Warning: GHCi | ? Variable not in scope: sound :: [Char] -> t0 Warning: GHCi | ? Perhaps you meant �eround�f (imported from Prelude) tidal>
(3)
AtomでGHCi Pathにchcp 65001 & stack exec --package tidal -- ghciを指定して実行したところ以下のようになりました。
少し変化がありましたが文字化けしたままなのは変わりありませんでした。
Custom ghci path configured: chcp 65001 & stack exec --package tidal -- ghci Ghci command: chcp 65001 & stack exec --package tidal -- \ghci Ghc-pkg command: chcp 65001 & stack exec --package tidal -- \ghc-pkg Load BootTidal.hs from C:\Users\username.atom\packages\tidalcycles\lib\BootTidal.hs �w�肳�ꂽ�p�X��������܂���B
またエディタ上のエラーメッセージは同じでした。
さらに追記
igrepさん
(4)
C:\sr\global-projectにstack.yamlがありました。
# This is the implicit global project's config file, which is only used when # 'stack' is run outside of a real project. Settings here do _not_ act as # defaults for all projects. To change stack's default settings, edit # 'C:\sr\config.yaml' instead. # # For more information about stack's configuration, see # http://docs.haskellstack.org/en/stable/yaml_configuration/ # packages: [] resolver: lts-14.23
初期状態からノータッチです。(よくわかってないので)
(5)
usernameは半角小文字アルファベットだけ使っています。
もう少し自分でも情報を調べてみます。
回答ありがとうございました。
回答1件
あなたの回答
tips
プレビュー