我正在尝试从 cpan shell“安装 SGML::Parser::OpenSP”,但在第一次“make test”时失败。如果我进入构建目录并运行 make test,我也会得到同样的错误。
我相信下面的输出是相关部分。请注意当 perl 到达新库的“使用”行时找不到符号。那里列出的文件存在并且是可读的。当我运行 unix 命令“nm”时,它确实显示了该符号。
我不知道如何处理未找到符号的错误。如果这很重要,我不会以管理员/root 身份运行。这是在 Mac 上,10.4.11 我的谷歌搜索出现了一些提示,如果调用 gcc 而不是 g++,可能会发生这种情况,但我相信设置正确。
还有什么可能,我该如何解决?
以下是运行 make test 的摘录:
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/01basic...........1/4
# Failed test 'use SGML::Parser::OpenSP;'
# at t/01basic.t line 14.
# Tried to use 'SGML::Parser::OpenSP'.
# Error: Can't load '/Users/joshgold/.cpan/build/SGML-Parser-OpenSP-0.994/blib/arch/auto/SGML/Parser/OpenSP/OpenSP.bundle' for module SGML::Parser::OpenSP: dlopen(/Users/joshgold/.cpan/build/SGML-Parser-OpenSP-0.994/blib/arch/auto/SGML/Parser/OpenSP/OpenSP.bundle, 2): Symbol not found: __ZTI15SGMLApplication
# Referenced from: /Users/joshgold/.cpan/build/SGML-Parser-OpenSP-0.994/blib/arch/auto/SGML/Parser/OpenSP/OpenSP.bundle
# Expected in: dynamic lookup
# at (eval 3) line 2
# Compilation failed in require at (eval 3) line 2.
# BEGIN failed--compilation aborted at (eval 3) line 2.