Para algumas bibliotecas, é possível ter as bibliotecas de 32 bits e 64 bits instaladas em um sistema de 64 bits. Isto está disponível através do pacote ia32-libs
no Ubuntu 10.04 e antes. De acordo com a lista de arquivos de ia32-libs
, não há nenhum arquivo libfuse.so.2
incluído. Isso significa que você não pode ter as duas arquiteturas instaladas de cada vez.
Desde o Ubuntu 11.10 Oneiric, é possível que os pacotes permitam a instalação simultânea para diferentes arquiteturas, o que é chamado de "Multi-Arch". Infelizmente, se eu puder acreditar na lista de arquivos de libfuse2
no Oneiric , este pacote ainda não foi transferido. Isso pode ser determinado a partir das dependências do pacote: se um pacote depende de multiarch-support
(como libdrm2 ), ele tem suporte para suporte multi-arco. No entanto, isso não é uma garantia de que o pacote pode ser instalado para várias arquiteturas simultaneamente.
Para consultar seu cache local em busca dos recursos de vários arquios de um pacote, digamos libc6
, run:
apt-cache show libc6 | grep ^Multi-Arch:
Para este comando, a saída é Multi-Arch: same
. Isso significa que as versões de 32 bits e 64 bits de um pacote podem ser instaladas por vez. Se não houver saída, o pacote não estará pronto para suporte a vários arcos. Outros valores possíveis são foreign
(não co-instalável, mas pode ser usado para satisfazer as dependências de outras arquiteturas) e allowed
(iirc, somente um pacote pode ser instalado por vez, mas o pacote pode ser usado para satisfazer dependências de outros pacotes)
Você deve ser capaz de instalar pacotes de 32 bits em um sistema de 64 bits com:
sudo apt-get install packagename:i386
Criando libfuse de 32 bits para máquinas de 64 bits
Como a biblioteca de fusíveis de 32 bits não é fornecida com ia32-libs
, você não tem outra opção senão criar você mesmo.
-
Instale as dependências de compilação para o fusível e obtenha o código-fonte:
sudo apt-get install ia32-libs libc6-i386 sudo apt-get build-dep fuse apt-get source fuse
-
Configure a árvore de origem e construa o fusível (ajuste o nome do diretório, se necessário):
cd fuse-2.8.4 CFLAGS=-m32 ./configure --host=i386-linux-gnu make -j 50
-
Instale a biblioteca de fusíveis de 32 bits (ajuste a versão de acordo):
sudo ln -s libfuse.so.2.8.4 /usr/local/lib/libfuse.so.2 sudo install -m644 lib/.libs/libfuse.so.2.8.4 /usr/local/lib/
-
Atualize o cache do vinculador:
sudo ldconfig
-
(opcional) Remova os arquivos de origem:
cd .. rm -r fuse-2.8.4