
Estou tentando compilar o nginx ... configure parece ok, então quando digito make recebo o seguinte erro:
make
make -f objs/Makefile
make[1]: Entering directory '/home/paul/src/ngxbuild/nginx-1.14.0'
cc -o objs/ngx_http_perl_module.so \
objs/src/http/modules/perl/ngx_http_perl_module.o \
objs/ngx_http_perl_module_modules.o \
-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -fPIC -Wl,-E -fstack-protector-strong -L/usr/local/lib -L/usr/lib/x86_64-linux-gnu/perl/5.26/CORE -lperl -ldl -lm -lpthread -lc -lcrypt \
-shared
/usr/bin/x86_64-linux-gnu-ld: cannot find -lperl
collect2: error: ld returned 1 exit status
objs/Makefile:1670: recipe for target 'objs/ngx_http_perl_module.so' failed
make[1]: *** [objs/ngx_http_perl_module.so] Error 1
make[1]: Leaving directory '/home/paul/src/ngxbuild/nginx-1.14.0'
Makefile:8: recipe for target 'build' failed
make: *** [build] Error 2
então o erro énão é possível encontrar -lperl
bem, o problema parece que /usr/lib/x86_64-linux-gnu/perl/5.26/
não há CORE
diretório. Eu uso o servidor Ubuntu 18.0, atualizei e atualizei, e não consigo encontrar como atualizar...
O trecho Debian contém perl 5.24.1 e o diretório CORE existe em /usr/lib/x86_64-linux-gnu/perl/5.24/
, então por que o Ubuntu não instala o diretório principal e como instalá-lo
Responder1
O Can not find -lperl
erro significa que não foi possível encontrar o arquivo libperl
.
No Debian Stretch isso é fornecido porlibperl-dev
% apt-file list libperl-dev
libperl-dev: /usr/lib/x86_64-linux-gnu/libperl.a
libperl-dev: /usr/lib/x86_64-linux-gnu/libperl.so
libperl-dev: /usr/share/doc/libperl-dev/README.cross
libperl-dev: /usr/share/doc/libperl-dev/changelog.Debian.gz
libperl-dev: /usr/share/doc/libperl-dev/copyright
Eu esperaria que um pacote semelhante fosse necessário no Ubuntu.