Yosemite svn 1.6.6 segmentation error

svn stopped working on my Mac after upgrading to Yosemite. I know that there is a very similar unanswered question, Segmentation error: 11 in SVN checking , however I spent almost all day on this and I am adding additional information on this issue. I hope someone can help someone ... I'm really stuck. I cannot update svn and I plan to return to Mavericks.

The error I am getting is:

svn update Segmentation fault: 11 

I already worked with svn from a binary that I compiled (although not very familiar with C). There was a few months ago an Xcode update that removed the old legacy of svn 1.6.

This time with Yosemite, when I tried to compile it again, I saw that the os update changed apache and APR , and the sources no longer compiled (or at least this is my guess from the error I get):

 /bin/sh /mnt/netzima/icaria/apps/subversion-1.6.6/libtool --tag=CC --silent --mode=compile gcc -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -no-cpp-precomp -g -O2 -g -O2 -I/usr/include/apache2 -I./subversion/include -I./subversion -I/usr/local/apr/include/apr-1 -I/usr/local/apr-util/include/apr-1 -I/opt/local/include/neon -o subversion/mod_authz_svn/mod_authz_svn.lo -c subversion/mod_authz_svn/mod_authz_svn.c subversion/mod_authz_svn/mod_authz_svn.c:448:9: error: member reference base type 'char' is not a structure or union ap_log_rerror(file, line, level, 0, r, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 

I downloaded and make install following:

  • libtool version 2.4.2
  • autoconf version 2.69
  • automake version 1.14
  • apr version 1.3.12
  • apr-util version 1.3.12
  • apache version 2.2.29

I was hoping these versions would be compatible with svn 1.6.6, because, as I mentioned earlier, I assumed that it was no longer compatible with the latest versions.

In others, to use the packages that I downloaded, I had to add parameters to the configure command. For apr-util, I had to configure as follows:

 ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr 

Regarding apache:

 ./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --prefix=/usr/local/apache2 --enable-dav --enable-so 

And finally svn:

 ./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-apxs=/usr/local/apache2/bin/apxs --enable-maintainer-mode 

This way, at least svn compiles (I think it proves that it gets the correct versions). But this does not work, I get the same segmentation error. I added the / usr / local / ... directories to my path to be sure, although I would suggest that svn puts the whole library in the right directory (I think it is / usr / local / bin that was already on my ways).

I have no idea how to go from here. I tried to compile using debugging to see if I could get a pointer to a segmentation error, a kernel dump or something like that, without success ...

Any help would be greatly appreciated! And thanks anyway.

EDIT:

Following @indiv's advice, this is otool output:

 /usr/local/bin/svn: /System/Library/Frameworks/Security.framework/Versions/A/Security (compatibility version 1.0.0, current version 57031.1.35) /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1151.16.0) /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 62.0.0) /usr/local/lib/libsvn_client-1.0.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/local/lib/libsvn_wc-1.0.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/local/lib/libsvn_ra-1.0.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/local/lib/libsvn_diff-1.0.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/local/lib/libsvn_ra_local-1.0.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/local/lib/libsvn_repos-1.0.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/local/lib/libsvn_fs-1.0.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/local/lib/libsvn_fs_fs-1.0.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/local/lib/libsvn_fs_util-1.0.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/local/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) /usr/local/lib/libsvn_ra_neon-1.0.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/local/lib/libsvn_delta-1.0.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/local/lib/libsvn_subr-1.0.dylib (compatibility version 1.0.0, current version 1.0.0) /opt/local/lib/libsqlite3.0.dylib (compatibility version 9.0.0, current version 9.6.0) /usr/local/apr-util/lib/libaprutil-1.0.dylib (compatibility version 4.0.0, current version 4.12.0) /usr/local/apr/lib/libapr-1.0.dylib (compatibility version 4.0.0, current version 4.12.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1213.0.0) /opt/local/lib/libneon.27.dylib (compatibility version 30.0.0, current version 30.6.0) /opt/local/lib/libiconv.2.dylib (compatibility version 8.0.0, current version 8.1.0) /opt/local/lib/libintl.8.dylib (compatibility version 10.0.0, current version 10.2.0) /opt/local/lib/libssl.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0) /opt/local/lib/libcrypto.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0) /opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.8) /System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos (compatibility version 5.0.0, current version 6.0.0) /opt/local/lib/libexpat.1.dylib (compatibility version 8.0.0, current version 8.0.0) 
+5
source share
2 answers

Finally it worked! Thanks @indiv for your help! I was about to give up and return to the Mavericks.

I had to compile neon, version 0.29.0.

 ./configure --prefix=/usr/local/neon --with-ssl 

Then I recompiled svn:

 ./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-apxs=/usr/local/apache2/bin/apxs --enable-debug --enable-maintainer-mode --without-sasl --with-neon=/usr/local/neon --with-ssl 

And it works!

0
source

Source: https://habr.com/ru/post/1207236/


All Articles