I created a PR to switch Homebrew to the system sqlite. https://github.com/Homebrew/homebrew-core/pull/76970
Feel free to comment on the PR if you have any concerns or want to support the change. Thanks Mark On Mon, May 10, 2021 at 9:33 AM Mark Phippard <markp...@gmail.com> wrote: > > On Sun, May 9, 2021 at 11:40 AM Mark Phippard <markp...@gmail.com> wrote: > > > > Looking for some ideas ... > > > > I just submitted a PR to Homebrew to build JavaHL on Apple Silicon: > > > > https://github.com/Homebrew/homebrew-core/pull/76900 > > > > In testing this I came across a problem I also have run into on Intel. > > I think this started happening in Big Sur but it could also be a > > recent Eclipse change or the recent Homebrew 3.0 change. > > > > Basically the issue is that at runtime JavaHL seems to pickup the > > system SQLite library so all working copy operations fail with this > > error: > > > > svn: Couldn't perform atomic initialization > > SQLite error > > svn: SQLite compiled for 3.35.5, but running with 3.32.3 > > > > On my Intel mac I worked around it by backdating the SQLite in > > Homebrew to version 3.32.3. That is obviously not the correct fix it > > was just a hack I did at the time. I can edit the Subversion formula > > to not use the Homebrew SQLite and just use the one from the OS. That > > seems like the right solution but I am not sure if it is acceptable > > for other Homebrew users and if I should submit the patch or not. > > > > I suspect the root issue is that Eclipse has started using SQLite for > > something and it is loading the system library and somehow that is > > causing the Subversion libraries at runtime to also get that version. > > If I Sample Eclipse when it is running I can see that both versions of > > the library are loaded but for some reason the SVN working copy code > > is picking up the system SQLite even though it seems to have loaded > > the right version. > > Couple of updates ... > > 1. My PR to Homebrew was merged so if you install subversion on Apple > Silicon you will now get the JavaHL library installed. > > 2. I am still looking into the SQLite issue. One thing I found was if > I open Eclipse from a Terminal and first do this then it works OK: > > export DYLD_LIBRARY_PATH=/opt/homebrew/opt/sqlite/lib > > I still suspect there is something Eclipse-specific about the problem > but I am not sure. The library itself seems correct: > > otool -L /Library/Java/Extensions/libsvnjavahl-1.dylib > /Library/Java/Extensions/libsvnjavahl-1.dylib: > /opt/homebrew/opt/subversion/lib/libsvnjavahl-1.0.dylib (compatibility > version 1.0.0, current version 1.0.0) > /usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 905.6.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_repos-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_client-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_wc-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_ra-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_diff-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_ra_local-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_fs-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_ra_svn-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /usr/lib/libsasl2.2.dylib (compatibility version 3.0.0, current version > 3.15.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_ra_serf-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/libexec/serf/lib/libserf-1.dylib > (compatibility version 1.3.0, current version 1.3.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_delta-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_subr-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_fs_fs-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_fs_x-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /opt/homebrew/Cellar/subversion/1.14.1_1/lib/libsvn_fs_util-1.0.dylib > (compatibility version 1.0.0, current version 1.0.0) > /usr/lib/libexpat.1.dylib (compatibility version 7.0.0, current version 8.0.0) > /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11) > /opt/homebrew/opt/sqlite/lib/libsqlite3.0.dylib (compatibility version > 9.0.0, current version 9.6.0) > /opt/homebrew/opt/lz4/lib/liblz4.1.dylib (compatibility version 1.0.0, > current version 1.9.3) > /opt/homebrew/opt/utf8proc/lib/libutf8proc.2.dylib (compatibility > version 2.0.0, current version 2.4.1) > /opt/homebrew/opt/apr-util/libexec/lib/libaprutil-1.0.dylib > (compatibility version 7.0.0, current version 7.1.0) > /opt/homebrew/opt/apr/libexec/lib/libapr-1.0.dylib (compatibility > version 8.0.0, current version 8.0.0) > /opt/homebrew/opt/gettext/lib/libintl.8.dylib (compatibility version > 11.0.0, current version 11.0.0) > /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation > (compatibility version 150.0.0, current version 1775.118.101) > /System/Library/Frameworks/Security.framework/Versions/A/Security > (compatibility version 1.0.0, current version 59754.100.106) > /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices > (compatibility version 1.0.0, current version 1122.33.0) > /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current > version 1292.100.5) > > Mark