stcorp / coda

The Common Data Access toolset
http://stcorp.github.io/coda/doc/html/index.html
BSD 3-Clause "New" or "Revised" License
39 stars 17 forks source link

CODA needs libcoda15, that is missing on Ubuntu 18.04 #83

Closed dmagurno closed 3 years ago

dmagurno commented 3 years ago

I installed the CODA tools since I need to read IASI data, and I want to work with them in MATLAB. The installation was successful, apparently, and MATLAB recognizes the CODA instructions. However, when I try to read a IASI file with 'coda_open' in MATLAB i get the following error:

Invalid MEX-file '/usr/local/lib/coda/matlab/coda_matlab.mexa64': libcoda.so.15: cannot open shared object file: File or directory does not exist

Error in coda_open (line 17) [varargout{1:max(1,nargout)}] = coda_matlab('OPEN',varargin{:});

I am working on Ubuntu 18.04 and for what I was able to understand the libcoda15 library only exists for Ubuntu 20.04. Is it possible that CODA does not work on such a recent Ubuntu version? I was wondering if there is a solution that avoids updating the OS (it is always a risky operation for compatibility reasons and I would like to avoid it if possible).

svniemeijer commented 3 years ago

The coda library that you need should be available in /usr/local/lib. You should not also install the coda version that comes with Ubuntu if you perform a manual install of coda.

On linux, /usr/local/lib is not included by default when the system searches for shared libraries. See also this post. We can't use the rpath approach, since that would require modifying the matlab executable. So you would either have to set an LD_LIBRARY_PATH environment variable or add /usr/local/lib to your /etc/ld.so.conf configuration.

dmagurno commented 3 years ago

I added /usr/local/lib to my LD_LIBRARY_PATH and now MATLAB recognizes the libcoda library and open IASI files regularly. Thanks for the help, I am really hopeless for these details of linking stuffs here and there