SVN within MATLAB 2024b

From one of my end users:
When I try to run ‘svn’ from within MATLAB, I get an error:
>> system('/usr/bin/svn --version')
/usr/bin/svn: symbol lookup error: /lib/x86_64-linux-gnu/libsvn_subr-1.so.1: undefined symbol: apr_crypto_block_cleanup
The same command works fine at the command line and works in MATLAB 2023b, so it feels like another example of MATLAB messing with the libraries it’s loading by default. (I already have something else in my LD_PRELOAD environment variable to get the matlab engine for python to work – conveniently, it’s the same trick that fixed the Ghostscript problems we had a while back!)
Any ideas how to address this?

Answers (2)

Another workaround is to reload the environment variables stored in the user's Home folder, before executing svn commands. For example, run the following instead:
!env -i HOME="$HOME" svn --version
Related post here.
Kautuk Raj
Kautuk Raj on 18 Dec 2024
I could also not execute SVN commands in the MATLAB command window while using R2024a/b.
As a workaround, I deleted all the binaries containing /usr/local/MATLAB/R20XXx/bin/glnxa64/libapr.so. This location may change based on where MATLAB is installed. Deleting these binaries should compel MATLAB to use the system's SVN rather than its own, thereby eliminating any conflicts between SVN configurations.

1 Comment

I encountered the same issue.
A perhaps more elegant solution for me was to reset the LD_LIBRARY_PATH before executing the svn command:
system("env LD_LIBRARY_PATH='' /usr/bin/svn --version")

Sign in to comment.

Categories

Products

Release

R2024b

Asked:

on 13 Dec 2024

Answered:

on 7 Apr 2025

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!