nginx: erro ao carregar bibliotecas compartilhadas: libpcre.so.1

Eu encontrei o seguinte erro no Nginx.

  $./nginx
./nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory
$

Se você estiver recebendo o erro acima ao iniciar NginxGenericName você pode corrigi-lo seguindo.

Isso acontece devido aos três motivos a seguir.

  • Você não tem o PCRE instalado
  • O Nginx não foi compilado e instalado usando pcre
  • A biblioteca PCRE não está definida em LD_LIBRARY_PATH

Existem várias maneiras de solucionar problemas e corrigir esse problema. Vamos entender o erro e corrigi-lo de acordo.

  nginx: error while loading shared libraries: libpcre.so.1

O Nginx está procurando por um arquivo libpcre.so.1 que vem sob o biblioteca PCRE e geralmente instalado no UNIX.

Vamos encontrar libpcre.so.1 usando o comando find

  $find / -name libpcre.so.1 
/usr/local/lib/libpcre.so.1 
$

Ok, então eu tenho este arquivo, o que significa que o PCRE já está instalado e prosseguirá com a próxima etapa de solução de problemas.

Nota: Se você não obtiver resultados de localização, instale o PCRE com o comando abaixo.

  yum install pcre

Se você não tiver privilégio de root, peça ao administrador do sistema para instalá-lo.

Agora, vamos definir LD_LIBRARY_PATH como pudemos ver libpcre.so.1 está disponível em /usr/local/lib

  $export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

Inicie o Nginx, deve ser agora.

Interessado em aprender Nginx? Veja isso curso .

Artigos relacionados