Como posso instalar as versões de 32 e 64 bits do mesmo pacote -dev?

10

Estou tentando instalar libsqlite3-dev para i386 e amd64 na mesma máquina Ubuntu 12.04. Estou desenvolvendo um aplicativo que usa sqlite3 e deseja compilar e testar as versões de 32 bits e 64 bits.

No entanto, parece que o pacote libsqlite3-dev:i386 é incompatível com o libsqlite3-dev:amd64 , já que apt continua querendo remover um quando eu instalar o outro.

Existe uma maneira de instalar os dois no mesmo sistema?

    
por Wim 13.02.2013 / 19:15

2 respostas

4

Você não pode instalar ambos os pacotes -dev no mesmo sistema ao mesmo tempo. Você só pode instalar um ou outro, pois eles contêm alguns dos mesmos arquivos. O arco múltiplo não permite o suporte de compilação cruzada, que é o que você está tentando fazer. Se você instalasse a versão :i386 do pacote de desenvolvimento sqlite e compilasse com o compilador de 64 bits, você certamente teria uma compilação quebrada como resultado.

Sua melhor aposta é compilar em um chroot ou VM de 32 bits, para construir a versão de 32 bits.

    
por dobey 13.02.2013 / 20:05
0

Pessoalmente, não considero instalações forçadas nem mesmo como último recurso. Eu acho que você pode achar o pbuilder bastante útil. Aqui está um HOWTO para isso. Você pode até mesmo instalar diferentes distros para esse propósito, e roteirizar o processo de construção para diferentes alvos ao mesmo tempo.

link

Então, você pode até deixar todos os pacotes dev desinstalados. Eles são instalados nessa instalação temporária de chroot.

    
por Jouni Kivilahti 14.02.2013 / 13:26