Estou tentando instalar um driver odbc para vPostgres (versão do VMware para postgres) no Ubuntu 11.10 (64 bits). Baixei o arquivo rpm do instalador (64 bits) e quando tento instalar o rpm usando:
rpm -ivh Vmware-vPostgres-client.rpm, mostra este erro:
erro: Dependências com falha: libc.so.6()(64bit) é necessário para VMware-vPostgres-client-1.0.1.1145-532311.x86_64 libc.so.6(GLIBC_2.2.5)(64bit) é necessário para VMware-vPostgres-client-1.0.1.1145-532311.x86_64 libc.so.6(GLIBC_2.3)(64bit) é necessário para VMware-vPostgres-client-1.0.1.1145-532311.x86_64 libc.so.6(GLIBC_2.3.3)(64bit) é necessário para VMware-vPostgres-client-1.0.1.1145-532311.x86_64 libdl.so.2()(64bit) é necessário para VMware-vPostgres-client-1.0.1.1145-532311.x86_64 libdl.so.2(GLIBC_2.2.5)(64bit) é necessário para VMware-vPostgres-client-1.0.1.1145-532311.x86_64 libpthread.so.0()(64bit) é necessário para VMware-vPostgres-client-1.0.1.1145-532311.x86_64 libpthread.so.0(GLIBC_2.2.5)(64bit) é necessário para VMware-vPostgres-client-1.0.1.1145-532311.x86_64 libresolv.so.2()(64bit) é necessário para VMware-vPostgres-client-1.0.1.1145-532311.x86_64 libresolv.so.2(GLIBC_2.2.5)(64bit) é necessário para VMware-vPostgres-client-1.0.1.1145-532311.x86_64
Algumas coisas que tentei:
localizar libpthread.so.0 retorna:
/lib/i386-linux-gnu/libpthread.so.0 /lib/x86_64-linux-gnu/libpthread.so.0 /lib32/libpthread.so.0
Recebo locais semelhantes para todos os outros arquivos: localize libc.so.6
/lib/i386-linux-gnu/libc.so.6 /lib/x86_64-linux-gnu/libc.so.6 /lib32/libc.so.6
e assim por diante.
Tentei criar links simbólicos usando:
sudo ln -s lib/x86_64-linux-gnu/libc.so.6 /lib64/libc.so.6 sudo ln -s lib/x86_64-linux-gnu/libc.so.6 /lib/libc.so.6 sudo ln -s lib/x86_64-linux-gnu/libc.so.6 libc.so.6
mas nenhum deles funcionou. Não tenho certeza de onde exatamente ele está tentando procurar esses arquivos.
ldd Vmware-vPostgres-client.rpm não ajuda muito e retorna 'não é um executável dinâmico', o que é esperado
Tentei adicionar o caminho no arquivo /etc/ld.so.conf
inclui lib/x86_64-linux-gnu/libc.so.6
Também tentei definir LD_LIBRARY_PATH para o arquivo especificado, mas não adiantou.
ldd --version mostra GLIBC 2.13
Alguém pode me ajudar onde exatamente ele procura o arquivo?
Responder1
O Ubuntu usa o formato de empacotamento Debian e, portanto, você não pode instalar RPMs de maneira sensata em uma distribuição baseada em Deb. Embora seja possível instalar a rpm
ferramenta, as dependências do pacote não se integram às dos pacotes Deb, e o conteúdo dos pacotes também pode não funcionar necessariamente.
A melhor solução é encontrar um pacote Deb do software que você deseja, e a próxima melhor opção é construí-lo você mesmo em um pacote Deb (o que é bastante trabalhoso). Se isso não for possível, o último recurso é tentar usarestrangeiropara converter o RPM em um Deb. Você ainda precisará lidar com as dependências manualmente e, possivelmente, com alterações feitas nos scripts do pacote.
Responder2
"alienígena" funciona para mim:
$ sudo apt-get install alien
$ sudo alien VMware-vPostgres-client-1.0.1.1145-532311.x86_64.rpm
vmware-vpostgres-client_1.0.1.1145-532312_amd64.deb generated
$ sudo dpkg -i vmware-vpostgres-client_1.0.1.1145-532312_amd64.deb
...
Unpacking vmware-vpostgres-client (from vmware-vpostgres-client_1.0.1.1145-532312_amd64.deb) ...
Setting up vmware-vpostgres-client (1.0.1.1145-532312) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place