web-dev-qa-db-fra.com

Comment installer les versions 32 et 64 bits du même package -dev?

J'essaie d'installer libsqlite3-dev pour i386 et AMD64 sur le même ordinateur Ubuntu 12.04. Je développe une application qui utilise sqlite3 et souhaite compiler et tester les versions 32 bits et 64 bits.

Cependant, il semble que le package libsqlite3-dev:i386 soit incompatible avec le libsqlite3-dev:AMD64, car apt continue de vouloir en supprimer un lorsque j'installe l'autre.

Existe-t-il un moyen d'installer les deux sur le même système?

11
Wim

Vous ne pouvez pas installer les deux packages -dev sur le même système en même temps. Vous ne pouvez installer que l'un ou l'autre, car ils contiennent certains des mêmes fichiers. Multi-Arch n'active pas le support de la compilation croisée, c'est ce que vous essayez de faire. Si vous deviez installer la version :i386 du package de développement sqlite et le compiler avec le compilateur 64 bits, vous obtiendrez certainement une construction endommagée.

Votre meilleur pari est de compiler dans un chroot ou une machine virtuelle 32 bits, pour construire la version 32 bits.

5
dobey

Personnellement, je ne considère pas les installations forcées même en dernier recours. Je pense que vous trouverez peut-être utile pbuilder. Voici un HOWTO pour ça. Vous pouvez même installer différentes distributions à cette fin et programmer le processus de construction pour différentes cibles en même temps.

http://ubuntuforums.org/showthread.php?t=206382

Ainsi, vous pouvez même laisser tous les packages de développement désinstallés. Ils sont installés dans cette installation temporaire chroot.

0
Jouni Kivilahti