这是 Mavericks 对上述andrewdotn's answer 的更新。
在 Mavericks 下,/usr/lib(标准位置)中唯一的 SVN 动态库是,例如,/usr/lib/libsvn_client-1.0.0.0.dylib。这个库的内部名称(使用otool -L 查找)告诉动态加载器查找libsvn_client-1.0.dylib。 通常这也会在 /usr/lib 中作为指向真实库的符号链接。
试试这个:
-
在andrewdotn的Makefile中,编辑LDFLAGS(第二行)说
/Library/Developer/CommandLineTools/usr/lib/libsvn_*-1.0.dylib \
-
设置DYLD_LIBRARY_PATH:
导出 DYLD_LIBRARY_PATH=/Library/Developer/CommandLineTools/usr/lib
然后make。我有 2 个错误:
======================================================================
ERROR: test_get_pristine_copy_path (svn.tests.wc.SubversionWorkingCopyTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "../egg/svn/tests/wc.py", line 192, in test_get_pristine_copy_path
self.assertEqual(path_to_text_base, wc.get_pristine_copy_path(path_to_file))
File "../egg/libsvn/wc.py", line 2447, in svn_wc_get_pristine_copy_path
return apply(_wc.svn_wc_get_pristine_copy_path, args)
SubversionException: ("The node '/var/folders/_q/fvnxz46903z9hjh38fz0lyhm0000gs/T/tmp7vMRZu/foo' was not found.", 155010)
======================================================================
ERROR: test_lock (svn.tests.wc.SubversionWorkingCopyTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "../egg/svn/tests/wc.py", line 48, in test_lock
lock = wc.add_lock(self.path, core.svn_lock_create(core.Pool()), self.wc)
File "../egg/libsvn/wc.py", line 2601, in svn_wc_add_lock
return apply(_wc.svn_wc_add_lock, args)
SubversionException: ('sqlite: LOCK.lock_token may not be NULL', 200035)
----------------------------------------------------------------------
但我还是安装了,hg convert 工作正常。
我怀疑每次需要运行hg convert 时都需要像上面那样设置DYLD_LIBRARY_PATH;希望不要那么频繁!