Debian

編譯 Perl 編譯器 (B::C) 的輸出,我得到“EXTERN.h: No such file or directory”

  • November 25, 2019

如果我嘗試編譯由 生成的東西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.

我該如何解決這個問題?

這是您需要的指標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

引用自:https://unix.stackexchange.com/questions/554157