script para verificar as bibliotecas do os no RedHat 5.xe 6.x

0

Enviamos o ImageMagick com nosso produto. Precisa de algumas bibliotecas.

libtiff libICE libdl
libfreetype libX11 libglib-2.0
libjpeg libbz2 libxml2
libpng librsvg-2 libz
libfontconfig libgdk_pixbuf-2.0 libm
libXext libm libgomp
libXt libgobject-.0 libpthread
libSM libgmodule-2.0 

Existe uma maneira padrão de verificar se essas bibliotecas já estão presentes no sistema operacional host RedHat?

A pesquisa no SO e no Google leva a comandos como

pkg-config, locate and which

Alguém já usou com sucesso eles?

    
por so_mv 09.05.2012 / 00:16

3 respostas

1

Experimente o comando ldd :

ldd ImageMagick

imprime o objeto dinâmico compartilhado, as bibliotecas que o programa ImageMagick faz referência e se as bibliotecas foram encontradas ou não.

    
por 09.05.2012 / 00:33
0

você pode usar o yum para instalar e mostrará as dependências que faltam.

se você quer apenas saber o que está faltando, você pode instalar o plugin yum-downloadonly, então você pode

yum instala -y ImageMagick --downloadonly

isso fará o download de todas as dependências ausentes sem instalá-las.

para encontrar dependências antes de instalar um rpm

rpm -qpR something.rpm

listará todas as dependências, e você poderá pesquisar para ver se elas existem, mas isso parece muito complicado. provavelmente yum --downloadonly será suficiente.

    
por 09.05.2012 / 00:34
0

Sugiro que você use autoconf ; existem ferramentas dentro das quais verificarão automaticamente as bibliotecas que existem, tentando compilar um programa fictício contra a biblioteca. link Um exemplo:

AC_CHECK_LIB(MagickWand, GetMagickModule)

Isso tentaria compilar um programa simples que chamaria GetMagickModule() - ele não tenta executar o programa, apenas para compilá-lo.

O programa autoconf gera um programa configure que seria chamado para verificar as bibliotecas. Seu objetivo principal é eventualmente gerar um Makefile, mas isso não tem que ser seu objetivo; o programa configure pode apenas verificar bibliotecas e retornar um erro se elas não existirem.

    
por 09.05.2012 / 02:24