Common Errors
Shell[edit]
Unable to Logon[edit]

If you are unable to logon:
- The most likely error is using an incorrect connection string and/or an incorrect password. Be sure to double-check your user name (lowercase first name, a hyphen, and then lowercase last name). This is followed by an at (@) sign, and then the server's name. As an example:
john-williams:~$ ssh john-williams@ssh.codermerlin.com
- Verify that your username is correct. The general format is <firstname>-<lastname>. Note that Coder Merlin™ uses a hyphen and not a period between first and last name.
- Verify that your "caps lock" is not on
- If you've used the incorrect credentials several times in a brief period of time you may be locked out. Wait for a while and then try again.
- Your credentials for both the shell and the wiki are the same.
Terminal "Glitched"[edit]

If the terminal isn't responding properly (e.g. line breaks aren't working, funny characters):
- The most likely error is programming in Curses and the program doesn't exit cleanly
- Type reset in the terminal and then press RETUNR. NB: You might not be able to see the keys as you type them, but type in the command regardless.
Wiki[edit]
Unable to Logon[edit]

If you are unable to logon:
- Verify that your username is correct. The general format is <firstname>-<lastname>. Note that Coder Merlin™ uses a hyphen and not a period between first and last name.
- Verify that your "caps lock" is not on
- If you've used the incorrect credentials several times in a brief period of time you may be locked out. Wait for a while and then try again.
- Your credentials for both the shell and the wiki are the same.
Merlin Dynamic Libraries[edit]
The specified library path was not found[edit]

If you see the following error:
The specified library path was not found '/usr/local/lib/merlin/Igis-1.2.0/Igis/.build/debug'
This indicates that the specified Coder Merlin™ libraries have been updated and the older version is no longer available. Simply update the dylib.manifest file with the latest version numbers for that library. All Coder Merlin™ libraries can be found at /usr/local/lib/merlin.
john-williams@codermerlin:~/Experiences/W1501$ ls -dt /usr/local/lib/merlin/Igis*
/usr/local/lib/merlin/Igis-1.3.7
/usr/local/lib/merlin/Igis-1.3.6
/usr/local/lib/merlin/Igis-1.3.4
/usr/local/lib/merlin/Igis-1.2.9
In general, select the most recent version and then edit dylib.manifest updating the respective version number. For example, from:
1 | Igis 1.2.0
2 | Scenes 1.0.4
To:
1 | Igis 1.3.7
2 | Scenes 1.0.4
Be certain that the final line in the file ends with a RETURN. Repeat this process for all such dynamic libraries which are not found.
dylib.manifest has been changed but .dir-locals.el has not[edit]

If you see the following error:
ERROR: '/home/john-williams/Experiences/W1501/dylib.manifest' has been changed but '/home/john-williams/Experiences/W1501/.dir-locals.el' has not.
Did you mean to execute dylibEmacs?
This means that dylib.manifest has been updated but .dir-locals.el has not. This may be easily remedied by executing:
john-williams@codermerlin:~/Experiences/W1501$ rm .dir-locals.el
john-williams@codermerlin:~/Experiences/W1501$ dylibEmacs
IGIS[edit]
Address already in use[edit]

If you see the following error:
Starting...
Loading resources from /usr/local/lib/merlin/Igis-1.3.7/Igis/Sources/Igis/Resources
Error: bind(descriptor:ptr:bytes:): Address already in use (errno: 98)
This means that Igis is already running and you've attempted to start a second instance. This may be remedied by terminating any other running Igis jobs.
john-williams@codermerlin:~/Experiences/W1501$ jobs
[1]+ Stopped run
john-williams@codermerlin:~/Experiences/W1501$ kill %1
Nothing is Visible[edit]

If you aren't seeing what you expect, check the following:
- Are you sure that you are invoking the render function?
- Are you sure that you've rendered all desired styles before rendering your shape?
- Are you sure that you aren't immediately erasing your shape after it's been rendered?
- Are you sure that you aren't preventing your shape from being rendered by rendering within a conditional (such as
if !didRender ...
) - Are you sure that you aren't rendering in the background color?
Merlin Mission Manager[edit]
This project doesn't permit changes to the file[edit]

If you see the following error:
This project doesn't permit changes to the file main.swift, however the file has been changed.
Restore the file to its original state or delete the file and execute merlin prepare.
This means that Merlin Mission Manager has detected a change to a file which may not be changed. This may be remedied by restoring the file and being certain to change only those files which may be changed. It's probably helpful to re-read the instructions.
john-williams@codermerlin:~/Merlin/M1301-15 (01) Karel Beeper Spread/C101 Move It [Karel]$ rm main.swift
john-williams@codermerlin:~/Merlin/M1301-15 (01) Karel Beeper Spread/C101 Move It [Karel]$ merlin prepare
Emacs[edit]
Syntax Highlighting[edit]

If emacs is not providing correct syntax highlighting, be sure that you've followed the instructions to recreate .dir-locals.el. If that doesn't resolve the issue, then within emacs:
M-x lsp-workspace-folders-remove RETURN RETURN
2. Add the correct folder:
M-x lsp-workspace-folders-add RETURN
3. Exit and restart emacs
Multiple Instances of Emacs[edit]

If you see the following error:
emacs is already running in this shell: [1]+ 3649039 Stopped /usr/local/bin/emacs
Type 'fg 1' to resume
Alternatively, you may specify --force-open to force open a new instance.
By default, Coder Merlin™ prohibits launching multiple instances of Emacs in the same shell session. Instead, you are encouraged to re-use the same Emacs session to find other files. If you truly need multiple instances of Emacs, you can use the --force-open flag.
john-williams@codermerlin:~$ emacs --force-open
Screen[edit]
TTY Locked[edit]

If you see the following error:
This TTY is now locked.
Please press [ENTER] to unlock.
This means that you have locked the terminal by pressing the key combination SCREEN x and must log back in to the terminal. Simply press Enter and enter the correct password. Remember: the password is still being entered if there is no visual representation on the terminal screen.
If you enter the incorrect password, you may see a second error message:
vlock: Authentication failure
root's Password:
This simply means that an incorrect password has been entered, and the system is trying to discern if you have the capabilities of the root, or super-user that can control the entire machine. In this case, simply press Enter and the terminal will reset to its previous error state.
If you do not remember your exact password, it is safe to exit the terminal and ssh back into the Coder Merlin™ shell. You will re-enter the same shell session you were previously in.
Swift[edit]
PCH Error During Compilation[edit]

If you see the following error(s) during a build:
<unknown>:0: error: PCH was compiled with module cache path '/home/john-williams/ScenesPlanetsExample/.build/x86_64-unknown-linux-gnu/debug/ModuleCache/2WIO3BAZ9R8YM', but the path is currently '/home/john-williams/projects/NotScenesPlanetsExample/.build/x86_64-unknown-linux-gnu/debug/ModuleCache/2WIO3BAZ9R8YM'
This means that you have changed the path to your sources from a previous compilation, perhaps as a result of moving the directory. In order to clear this state and recompile, enter:
john-williams@codermerlin:~$ swift package clean
You can then recompile.
Web Server[edit]
Existing File Indicates Permissions Error[edit]

You can restore the proper permissions recursively with a single command:
john-williams@codermerlin:~$ chmod -R a+rX ~/www ~/Journals