首页 > 解决方案 > 当我在 MacBookPro BigSur 11 中安装 Set::Object 时出现“致命错误:找不到‘EXTERN.h’文件”

问题描述

我是生物信息学领域的新手,这是我第一次在英语网络上寻求帮助。当我尝试在我的 MacBookPro BigSur 11.5.2 中安装“BioPerl”时,发生了一些奇怪的事情。首先,在做的时候cpan install BioPerl,它失败了并告诉我

one dependency not OK (Graph::Directed); additionally test harness failed

其次,我尝试安装Graph::Directed,然后...

Result: FAIL
Failed 63/84 test programs. 11/740 subtests failed.
make: *** [test_dynamic] Error 255
  ETJ/Graph-0.9724.tar.gz
one dependency not OK (Set::Object); additionally test harness failed
  /usr/bin/make test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
  reports ETJ/Graph-0.9724.tar.gz

第三,我安装了Set::Object,这又失败了......

cc -c   -g -pipe -fno-strict-aliasing -fstack-protector-strong -DPERL_USE_SAFE_PUTENV -Os   -DVERSION=\"1.41\" -DXS_VERSION=\"1.41\"  -iwithsysroot "/System/Library/Perl/5.30/darwin-thread-multi-2level/CORE"   Object.c
Object.xs:5:10: fatal error: 'EXTERN.h' file not found
#include "EXTERN.h"
         ^~~~~~~~~~
1 error generated.
make: *** [Object.o] Error 1
  RURBAN/Set-Object-1.41.tar.gz
  /usr/bin/make -- NOT OK

之后,我在安装 Perl 模块1时找到了一些答案(“Fatal error: 'EXTERN.h' file not found” )但不起作用,我的 perl 是 5.30.2(终端中的 'perl -v' 的结果)而 ' /Library/Developer/CommandLineTools/SDKs' 仅包括 'MacOSX10.14.sdk' 和 'MacOSX10.15.sdk' (没有 'MacOSX11sdk')以及当我使用

find /Library/Developer/CommandLineTools -name EXTERN.h
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Perl/5.18/darwin-thread-multi-2level/CORE/EXTERN.h
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/System/Library/Perl/5.28/darwin-thread-multi-2level/CORE/EXTERN.h
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/System/Library/Perl/5.18/darwin-thread-multi-2level/CORE/EXTERN.h

我的 Mac 中的版本可能处于混乱状态?所以我现在不知道要解决这个问题。这对一个新人来说非常令人沮丧,但我永远不会放弃......


以上都失败后,我寻找perl 5.30.2文件,它在“usr/perl”和“sys/lib”中,与我“find”(sys/lib/developer/)相比, “CORE”文件为空,无法编辑(我想从 5.28 复制缺少的文件但失败且不起作用)。这就是那些错误的结果。虽然,我无法修复它......

标签: perl

解决方案


推荐阅读