11 我想安装libsqlite3-dev两个i386和amd64相同的Ubuntu 12.04的机器上。我正在开发使用sqlite3的应用程序,并希望编译和测试32位和64位版本。 但是,看起来该libsqlite3-dev:i386软件包与并不兼容libsqlite3-dev:amd64,因为apt在安装另一个软件包时一直想删除其中一个。 有没有办法将两者安装在同一系统上? installation apt 64-bit 32-bit multiarch — 威姆 source
5 您不能同时在同一系统上安装两个-dev软件包。您只能安装一个或另一个,因为它们包含一些相同的文件。多体系结构不启用交叉编译支持,这是您要尝试做的。如果要安装:i386sqlite开发包的版本,并使用64位编译器进行编译,则几乎肯定会导致编译失败。 最好的选择是在32位chroot或VM中进行编译,以构建32位版本。 — 多比 source 头文件确实在两个软件包中,但是它们的内容是相同的。更,对于其他的-dev包,例如zlib1g,其也有共同的(和相同的)文件,它是能够同时安装这两个版本。 — Wim 1 我只是强行安装了两个软件包,这似乎没有破坏任何东西,现在我可以构建(并正确运行)两个版本。这是软件包维护者在没有真正冲突的地方声明冲突的一种情况吗? — Wim
0 就个人而言,即使万不得已,我也不会考虑强制安装。我认为,您可能会发现pbuilder非常有用。这是一个HOWTO。您甚至可以为此目的安装不同的发行版,并同时为不同目标的构建过程编写脚本。 http://ubuntuforums.org/showthread.php?t=206382 因此,您甚至可以卸载所有开发包。他们安装到该临时chroot安装中。
-dev
包,例如zlib1g
,其也有共同的(和相同的)文件,它是能够同时安装这两个版本。