On 24/01/2013 12:56, Paul Johnson wrote: > [...] > I've just learned that, if I build amd64 packages, I can't install > them for testing because I've not also built the i386 packages. > [...] > That's really inconvenient! I don't understand why there has to be a > linkage between the shared library versions on amd64 and i386. Aren't > they separate?
Simply put, when foo:amd64 and foo:i386 are installed, all common files that are shared between them must be bit-for-bit identical (though in practice this isn't so, e.g. the gzipped files in /usr/share/doc/$pkg/). This is a reasonable expectation when foo:amd64 and foo:i386 are of the same version, but it's probably going to fail very miserably when they're of different versions, so that's how it is. See <https://wiki.ubuntu.com/MultiarchSpec#Architecture-independent_files_in_multiarch_packages> for more information. > You ask "why cairo?" I am curious to know if a new libcairo2 fixes a > little bug in Evince (invisible vertical quotes). So I worked through > the packaging for cairo-1.12.10. dpkg-buildpackage -rfakeroot gives me > the goods (after fiddling some patch fuzz): > [...] In your case, you could just very well install the packages, leave the dependencies unresolved, and just run Evince as is to test. > I expect your answer will be "yes, it really is that hard, you have to > learn how to compile for i386 too". I'm trying > (http://wiki.debian.org/Multiarch/HOWTO), but not making progress. I'm > like a collection of monkies trying to type the Bible at random, I'm > afraid. > [...] Just use sbuild/pbuilder, which basically compile things inside a chroot so you don't have to deal with the cross-compilation mess. As long as the architecture of the chroot you're compiling for is supported by the kernel you're running, it'll work. -- Kind regards, Loong Jin
signature.asc
Description: OpenPGP digital signature