Fixes to common problems

Something went wrong; what are my first steps?

In MATLAB, try running:


These two functions will remove old compiled C++ binaries and check to make sure that xolotl can find the C++ files that define compartments and conductances and so on.

On macOS, I get an annoying warning saying "xcrun: error: SDK "macosx10.13.4" cannot be located"

Run the following in your shell (not the MATLAB prompt):

sudo xcode-select -s /Applications/

On macOS, I get a warning saying that "Warning: Xcode is installed, but its license has not been accepted."

  • First, make sure you have XCode installed (not just the Command Line Tools -- the whole thing).
  • You can get this from the Mac App Store.
  • Then, open XCode and accept the license.
  • You will have to do this only once.

When trying to run code on parallel, I get an error saying "File not found!" or "Error in xolotl/transpile (line 43) self.transpileCore('mexTemplate.cpp',out_file)"

You're getting this error because one or more of MATLAB's parallel processes can't find the mexTemplate.cpp file that it needs to compile code. This is because even though xolotl is added on your path, it isn't on your path in all copies of the main MATLAB process that are running in parallel.

To fix this, save your path and reboot your parallel workers:

savepath; % saves path
delete(gcp) % delete the current parallel pool
rehash toolbox
rehash toolboxcache % updates caches
parpool % restart parallel pool

I ran the quickstart, but I don't see anything

Are you using a tiny screen? Some UI elements may go out of the frame on very small screens. To fix this, acquire the handle to the figure and change the position property. For example:

manip = gcf;
manip.Position = [0 0 300 100];

I get an error saying I don't have a compiler

You need a C/C++ compiler. You need to follow MATLAB's instructions on how to get one, how to install one, and how to configure one. It may be helpful to also see our advice on compilers

I created a new component, but cpplab can't find it

This typically appears as a cpplab::resolvePath error. Here are some things to check:

  • Are you sure that your named it *****.hpp and not *****.cpp?
  • Does it exist somewhere on your MATLAB path, or in a subfolder?
  • Did you try running cpplab.rebuildCache?
  • Did you try x = xolotl; x.rebase?
  • If you still run into errors, file an issue at cpplab