c - 优胜美地 svn 1.6.6 段错误

标签 c apache svn osx-yosemite apr

升级到 Yosemite 后,svn 在我的 Mac 上停止工作。我知道有一个非常相似的问题没有答案, Segmentation fault: 11 in SVN checkout ,但是我已经花了几乎一整天的时间来解决这个问题,并且我正在添加有关该问题的更多信息。我希望有人也许有人可以提供帮助......我真的被困住了。我无法升级 svn,我打算回到 Mavericks。

我得到的错误:

svn update
Segmentation fault: 11

我已经在自己编译的二进制文件中使用 svn(尽管对 C 不太熟悉)。几个月前,Xcode 更新删除了旧的遗留 svn 1.6。

这次使用 Yosemite,当我再次尝试编译它时,我看到操作系统更新修改了 apacheAPR 而源代码没有继续编译(或者至少这是我从错误中得到的猜测):

/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,
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

我已经下载并安装以下内容:

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

我希望这些版本与 svn 1.6.6 兼容,因为正如我之前提到的,我的猜测是它不再与最新版本兼容。

要使用我下载的那些包,我必须向配置命令添加选项。对于 apr-util,我必须这样配置:

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

至于 Apache :

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

最后是 svn:

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

这样至少可以编译 svn(我想这证明它获得了正确的版本)。但它不起作用,我得到了同样的段错误。我已经将/usr/local/... 目录添加到我的路径中只是为了确定,虽然我猜 svn 将它需要的所有库放在一个可访问的目录中(我认为它是/usr/local/bin,这已经在我的道路上了)。

我不知道如何从这里开始。我尝试使用调试进行编译以查看是否可以获得指向段错误、核心转储或类似内容的指针,但没有成功...

任何帮助将不胜感激! 还是谢谢你。

编辑:

按照@indiv 的建议,这是 otool 的输出:

/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)

最佳答案

关于c - 优胜美地 svn 1.6.6 段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27112621/

相关文章:

php - Apache2/phpmyadmin - PHP 不工作

php - MAMP Config 帮助,显示 PHP 错误

angularjs - 如何正确让 Apache 代理 NodeJS?

java - 如何使用 SVNkit 获取特殊文件的所有修订版(不是最新版)?

c - 如何测量一小段 C/汇编代码的速度?

c - Micro C OS II 中的时间延迟

windows - TortoiseSVN 提交后 Hook 在 Win 7 上失败

visual-studio-2010 - Visual Studio 中的包目录是什么?我应该将其包含在 SVN 中吗?

c - C语言从文件中读取信息

c - 在c中插入单链表