Perl 컴파일러(B::C)의 출력을 컴파일하면 "EXTERN.h: 해당 파일이나 디렉터리가 없습니다"라는 메시지가 나타납니다.

Perl 컴파일러(B::C)의 출력을 컴파일하면 "EXTERN.h: 해당 파일이나 디렉터리가 없습니다"라는 메시지가 나타납니다.

내가 컴파일하려고하면B::C,

$ perl -MO=C,-omyTest.c -e'print "Hello World!";'
-e syntax OK

그런 다음`gcc myTest를 실행하십시오.

$ gcc ./myTest.c 
./myTest.c:3:10: fatal error: EXTERN.h: No such file or directory
 #include "EXTERN.h"
          ^~~~~~~~~~
compilation terminated.

이 문제를 어떻게 해결할 수 있나요?

답변1

필요한 측정항목은 다음과 같습니다.libperl

$ apt-file search EXTERN.h
libperl5.28: /usr/lib/x86_64-linux-gnu/perl/5.28.1/CORE/EXTERN.h

이 패키지를 추가할 수 있습니다.

$ sudo apt-get install libperl5.28

-I그런 다음 ()를 사용하여 GCC를 호출할 때 이 목록을 경로에 추가해야 합니다.

gcc -I"/usr/lib/x86_64-linux-gnu/perl/5.28.1/CORE/" -lperl ./myTest.c

관련 정보