I assumed that the downloadable ImageMagick that I instructed you to install would just work. Instead, it is broken on Mojave and Catalina 10.15.4, because when montage is run, it attempts to load an ImageMagick dynamically linked library (dylib), and that fails stating that it could not load the dylib, and there was a image not found. This occurs with any other ImageMagick tool (e.g. identify), and even when run in the same directory location as the images.
The downloadable ImageMagick tar file solution will not work.
My original testing was an ImageMagick (with dependent libraries) that was downloaded and compiled with the homebrew (brew) package manager. The zsh script does what is expected, error free, when using montage from that build, whether on Mojave and Catalina. I was trying to avoid the overhead of the package manager solution, as the one I asked you to try was simpler to setup — if it had worked.
The steps to a package manager built ImageMagick solution is tedious, and requires a compilation suite, either Xcode 11.4 (Catalina 10.15.2 or later), or without Xcode, the downloadable Command-Line tools for Xcode 11.4, which saves huge GB in storage and download time. The command-line tools require a free/fee developer account to access.
Once the compilation suite issue is resolved, one has to install homebrew (brew), which wants to go into the /usr/local tree. The following may get the homebrew package manager installed from the Terminal. Note that the sudo command will prompt for your admin password, which will not echo as typed.
sudo /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
If that went well, then some initial house-keeping:
brew update
brew upgrade
brew install ImageMagick
brew cleanup
The ~/.zshrc file should have these adjustments:
export PATH=".:$HOME:$HOME/bin:/usr/local/bin:$PATH"
export HOMEBREW_NO_ANALYTICS=1
In Terminal, once you have saved the ~/.zshrc file, source ~/.zshrc
Now, the montage executable is installed in /usr/local/bin, which is in your PATH, and can be used by name, rather than explicit path to it. The zsh script will work as intended.
