Reports until 14:57, Thursday 01 June 2017
H1 CDS (SEI)
david.barker@LIGO.ORG - posted 14:57, Thursday 01 June 2017 - last comment - 17:11, Thursday 01 June 2017(36594)
fix to get autoquack working on Debian8

Jim, Jonathan, Dave:

Jim was having autoquack errors of the kind:

libstdc++.so.6: version 'GLIBCXX_3.4.20' not found

The solution is to LD_PRELOAD a path the OS version of this file at the time matlab is started.

The Debian8 path for this file is /usr/lib/x86_64-linux-gnu/libstdc++.so.6, and running the command strings on it verifies it contains GLIBCXX_3.4.20

strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6|grep GLIBCXX_3.4.20
GLIBCXX_3.4.20

The command to start matlab and have autoquack work is:

LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6 matlab

Comments related to this report
keith.thorne@LIGO.ORG - 17:11, Thursday 01 June 2017 (36599)
Thanks to Jamie Rollins, I created a MATLAB utility (linux() in /trunk/cds/utilities) that you can replace all your system() and unix() calls with.  This function tears out the path to all the MATLAB versions for Linux libraries, makes your system call, and puts everything back.  Add a soft-link in /ligo/cds/usermatlab to it

-- The root problem is (any) MATLAB normally adds its own versions of critical Linux libraries to the LD_LIBRARY_PATH within MATLAB.  So unless you are using a MATLAB version specifically built on the specific OS revision you are using (mostly never the case), you will always get screwed up