Troubleshooting a Tidal install

From TidalCycles userbase
Jump to: navigation, search
This page contains changes which are not marked for translation.
Other languages:
Deutsch • ‎English • ‎français • ‎italiano

If you've gone through the Tidal installation instructions, but can't get it working, here's some steps to locate what the problem is (or problems are).

Haskell

Open a terminal window, and type:

  ghci

You should see something like this

 GHCi, version 8.6.3: http://www.haskell.org/ghc/  :? for help
 Prelude> 

If you don't see something like the above, you probably need to install Haskell. You might well see a different version number, don't worry. At the time of writing, Tidal is tested against versions right back to 7.10.3.

Tidal library

Keeping that ghci window open, type (or paste in):

 import Sound.Tidal.Context

You should now see something like:

 GHCi, version 8.6.3: http://www.haskell.org/ghc/  :? for help
 Prelude> import Sound.Tidal.Context
 Prelude Sound.Tidal.Context> 

If you instead see an error message like:

 <no location info>: error:
   Could not find module ‘Sound.Tidal.Context’

This means that the tidal library isn't installed. To install it, open a new terminal window and type:

cabal update
cabal new-install tidal --lib

-- note: as of version 1.7 instead you'll have to use the following commands:
cabal v1-update
cabal v1-install tidal

If you see an error message (ignoring warnings about 'legacy v1 style' commands), then make sure you have installed the 'full' haskell platform and try again. If it still doesn't work, please make a note of the error message and ask the Community for help.

SuperCollider / SuperDirt

Start SuperCollider, and paste the following in:

 SuperDirt.start

With your cursor on the same line, run it with shift-enter.

You should see messages about lots of sample banks being loaded and eventually:

 SuperDirt: listening to Tidal on port 57120

If you instead see an error message, read on..

ERROR: Class not defined.

If you see the error

 ERROR: Class not defined.

This means SuperDirt isn't installed. Install it by running

 include("SuperDirt")

If it fails to install, make sure you have the `git` command installed. You can do this by running `git --version` from a command prompt. If the command isn't found, then check the install page for how to install git. Once it's installed, you'll need to restart supercollider before trying again.

For users who have just installed SuperCollider restarting it prior to running include("SuperDirt") could also resolve the error.

Could not bind to requested port

If you see an error like:

 Could not bind to requested port. This may mean it is in use already by another application.
 ERROR: Could not open UDP port 57120

This probably means you have stray supercollider processes running, blocking network ports. Shut down supercollider, and force quit `sclang` and `scserver` in your task manager. Failing that, a reboot will clear them.

Compile problems

Often the problem is with installing the tidal haskell library. When this comes up with errors, you know that's (part of) your installation problem.

cabal update
cabal new-install tidal --lib

ghc-pkg recache

If some cabal packages fail to compile for no clear reason, this can help:

sudo ghc-pkg recache
cabal update
cabal new-install tidal --lib

Haskell version

Often, installing the full (rather than core) version of the Haskell platform will clear up your problems. Get it from here: https://www.haskell.org/platform/

Missing sounds

If everything seems to be working, but not all sounds play, then probably there was a problem causing the download of Tidal's extensive library of 'default' sounds to fail part way through.

You can fix this by finding the `Dirt-Samples` folder, via the supercollider menus: Open user support directory > downloaded-quarks > Dirt-Samples. You'll probably find that many of the folders are missing or empty. You can download all the samples from here:

 https://github.com/musikinformatik/Dirt-Samples

... and then copy them over the existing Dirt-Samples folder.

Installing via 'stack' rather than 'cabal'

If the tidal Haskell library has stubborn problems when installed with cabal, particularly if it brings up errors related to the 'network' library under library, then instead installing with `stack` solves it.

This is done with the following command in a terminal window:

stack install tidal

Once that's done, you just have to tell the atom plugin to use the tidal installed with stack. In atom, find the settings for the tidalcycles package, and set the 'ghci path' setting to stack exec --package tidal -- ghci. Then, restart atom and all should be well.