在我的工作中,我们必须从源代码构建 Subversion 环境,因为它部署在共享应用程序服务器上,并且所有依赖项都必须包含在用户的主目录中。我开发了一个脚本,可以从源代码构建所有内容(包括 Apache 2.2.14、SVN 1.6.6、PHP 5.3.1 和 MySQL 5.1.41),并且在 10.5(Leopard)和 10.4(Tiger)下都可以完美运行。但是,当我在 10.6(Snow Leopard)上构建它时,除了 Subversion 的 SWIG Perl 绑定附带的测试外,其他一切都成功了。为了节省空间,以下是史诗般失败的第一部分的摘录:
../../../../../subversion/bindings/swig/perl/native/t/0use.............ok
../../../../../subversion/bindings/swig/perl/native/t/1repos...........Directory needs to be empty but is not: Repository creation failed: Could not create top-level directory: '/var/folders/yD/yDpb4DctHjOFN0lC4QHjz++++TI/-Tmp-/svn-perl-test-l7N5wb' exists and is non-empty at ../../../../../subversion/bindings/swig/perl/native/t/1repos.t line 18
# cleanup
# Looks like your test died before it could output anything.
../../../../../subversion/bindings/swig/perl/native/t/1repos...........dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-6
Failed 6/6 tests, 0.00% okay
(所有失败都有相同的根本原因,“存储库创建失败:无法创建顶级目录”。
我已经尝试了所有显而易见的方法,并在测试运行之前检查了它提到的目录是否真的存在,但事实并非如此。我很困惑为什么这在 Snow Leopard 之外的所有平台上都能正常工作。甚至看起来 Perl 绑定至少部分起作用,这使得测试失败更加令人费解。我(以及与我一起工作的其他人)真的很想确保绑定在构建时确实有效,这样我们就可以使用利用绑定的提交前/提交后钩子,并且知道它们会起作用。
非常希望能够找到导致这些故障的原因。提前致谢!
答案1
没有任何线索,但你不是唯一一个遇到 Perl 和 Snow Leopard 问题的人:http://twitter.com/timbray/statuses/6156016213 https://stackoverflow.com/questions/1279939/how-do-i-fix-symbol-not-found-isprefix-when-compiling-perls-dbdmysql