Spiceinit error missing shape model file

I get an error running spiceinit on Mars Odyssey THEMIS IR images apparently because the shape model file it needs (molaMarsPlanetaryRadius0005.cub) is missing from the isis3/data//base/dems folder. I looked in that folder and I have other shape models with the same name except the last digit is 1,2,3, and 4. But I don’t know how to get the missing file (#5). I tried using rsync to download/update the base data but after doing that I still didn’t have the right file. And I looked for the file on GitHub but couldn’t find it there either. Can you tell me how to get that file or fix this problem?

Also, I’m running spiceinit with the parameter web=yes but I read somewhere in the support pages that the shape model files have to be located on your own computer even if you set web=yes. Is that true?

You do need to have the shapemodel local even for web spice as the shapemodels are too large to dynamically download (anywhere from hundreds of megabytes to tens of gigabytes). This was added in 4.4.0. So, make sure that you are running at least that version.

Which version of the ISISDATA area did you look for the file in? It should be located in isisdist.astrogeology.usgs.gov::/data/base/dems

OK, I checked the version and was running 3.8.1. So I was going to try to update it but while looking for instructions on doing that I saw something about updating conda (since I was using version 4.7.12 and it said I should be using at least version 4.8), so I decided to try that first, using the command “conda update -n base conda”. That seemed to work successfully, but now I can’t do anything with ISIS. I tried “conda activate isis” and got back this error message:

EnvironmentNameNotFound: Could not find conda environment: isis
You can list all discoverable environments with conda info --envs.

So then I entered the suggested command “conda info --envs” and got this error report back:

>>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

Traceback (most recent call last):
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/exceptions.py", line 1114, in __call__
    return func(*args, **kwargs)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/cli/main.py", line 86, in main_subshell
    exit_code = do_call(args, p)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/cli/conda_argparse.py", line 90, in do_call
    return getattr(module, func_name)(args, parser)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/cli/main_info.py", line 317, in execute
    info_dict = get_info_dict(args.system)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/cli/main_info.py", line 135, in get_info_dict
    _supplement_index_with_system(virtual_pkg_index)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/core/index.py", line 158, in _supplement_index_with_system
    cuda_version = context.cuda_version
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/auxlib/decorators.py", line 268, in new_fget
    cache[inner_attname] = func(self)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/common/decorators.py", line 24, in wrapper
    return func(*args, **kwargs)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/base/context.py", line 926, in cuda_version
    return cuda_detect()
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/common/cuda.py", line 37, in cuda_detect
    import ctypes
  File "/Users/stephen/anaconda3/lib/python3.7/ctypes/__init__.py", line 7, in <module>
    from _ctypes import Union, Structure, Array
ImportError: dlopen(/Users/stephen/anaconda3/lib/python3.7/lib-dynload/_ctypes.cpython-37m-darwin.so, 2): Library not loaded: @rpath/libffi.6.dylib
  Referenced from: /Users/stephen/anaconda3/lib/python3.7/lib-dynload/_ctypes.cpython-37m-darwin.so
  Reason: image not found

What should I do now to get ISIS working and/or updated?

This is a known bug with updating conda. Run this to fix the missing image error (it just make a symlink to point to the actual installed library):

cd /Users/stephen/anaconda3/lib
ln -s libffi.7.dylib libffi.6.dylib

OK, I ran that command, but I still get an error (copied below) when I run “conda info --envs”. Was the missing image file “libffi.7.dylib” or “libffi.6.dylib”? I looked in the anaconda3/lib directory and I see files called “libffi.6.dylib” and “libffi.8.dylib”, but no “libffi.7.dylib”. And the error message seems to say that it’s “libffi.6.dylib” that can’t be found?

Also, after we get this conda error fixed, what should I do next to update my version of ISIS? Use this command: “conda update -c usgs-astrogeology isis” ? (According to the directions here: https://github.com/USGS-Astrogeology/ISIS3/blob/dev/README.md#Installation )

Error message I got this time:
(base) Stephens-MacBook-Pro-10:anaconda3 stephen$ conda info --envs

>>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

Traceback (most recent call last):
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/exceptions.py", line 1114, in __call__
    return func(*args, **kwargs)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/cli/main.py", line 86, in main_subshell
    exit_code = do_call(args, p)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/cli/conda_argparse.py", line 90, in do_call
    return getattr(module, func_name)(args, parser)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/cli/main_info.py", line 317, in execute
    info_dict = get_info_dict(args.system)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/cli/main_info.py", line 135, in get_info_dict
    _supplement_index_with_system(virtual_pkg_index)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/core/index.py", line 158, in _supplement_index_with_system
    cuda_version = context.cuda_version
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/auxlib/decorators.py", line 268, in new_fget
    cache[inner_attname] = func(self)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/common/decorators.py", line 24, in wrapper
    return func(*args, **kwargs)
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/base/context.py", line 926, in cuda_version
    return cuda_detect()
  File "/Users/stephen/anaconda3/lib/python3.7/site-packages/conda/common/cuda.py", line 37, in cuda_detect
    import ctypes
  File "/Users/stephen/anaconda3/lib/python3.7/ctypes/__init__.py", line 7, in <module>
    from _ctypes import Union, Structure, Array
ImportError: dlopen(/Users/stephen/anaconda3/lib/python3.7/lib-dynload/_ctypes.cpython-37m-darwin.so, 2): Library not loaded: @rpath/libffi.6.dylib
  Referenced from: /Users/stephen/anaconda3/lib/python3.7/lib-dynload/_ctypes.cpython-37m-darwin.so
  Reason: image not found

$ /Users/stephen/anaconda3/bin/conda info --envs

An unexpected error has occurred. Conda has prepared the above report.

It is attempting to load libffi.6.dylib

try

cd /Users/stephen/anaconda3/lib
ln -s libffi.8.dylib libffi.6.dylib

You should be able to update ISIS with the command you posted. If you want to go to 7.0 there maybe some wrinkles with needing to change your Python version, but that should allow you to upgrade to at least something newer.

I tried that new command and got this message back:
ln: libffi.6.dylib: File exists

Given that I’m having so many problems updating ISIS and Conda, maybe the best thing to do is to uninstall everything and start over fresh? However, I can’t find any information about how to uninstall Conda and/or ISIS - could you please tell me how or point me to the information?

Try this instead then

cd /Users/stephen/anaconda3/lib
rm libffi.6.dylib
ln -s libffi.8.dylib libffi.6.dylib

If you want to uninstall conda the docs are here. That will uninstall your version of ISIS too.