Skip to content

Development Troubleshooting

This page provides some troubleshooting information.

Developing on macOS Catalina and newer

Due to some legacy 32-bit binaries (sdf2table and implodePT) that are required to build some of the Spoofax meta-languages, building on macOS Catalina or newer (Big Sur, Monterey) requires the following additional components to be installed:

  • coreutils
  • Docker for Mac

Refer to the Requirements page for more information and installation instructions. The following subsections detail some problems that can occur when developing on macOS Catalina or newer.

realpath: command not found

You should install coreutils. Refer to the Requirements page for installation instructions.

Invoke the following command to test it (it should return the full path to the current directory):

realpath -s .

Mounts denied: The path is not shared the host and is not known to Docker

Error response from daemon: Mounts denied: 
The path /var/folders/a_/foo0000bar/T/vfs_cache-345/tmp_123_macosx/sdf2table-macosx
is not shared from the host and is not known to Docker.

Ensure the root of the path (/var/folders in this example) is shared in Docker for Mac. Go to Docker for Mac PreferencesResourcesFile Sharing and add the path to the list. The default list should contain:

  • /Users
  • /Volumes
  • /private
  • /tmp
  • /var/folders

invalid mount config for type "bind": bind source path does not exist

Error response from daemon: invalid mount config for type "bind":
bind source path does not exist:
/var/folders/a_/foo0000bar/T/vfs_cache-345/tmp_123_macosx

Ensure that both Docker and the terminal from which you are invoking the build have full-disk access. Go to macOS PreferencesSecurity and PrivacyFull Disk Access and check the checkboxes next to Docker and your terminal (Terminal and/or iTerm).


Last update: 2021-11-15
Back to top