Hi, Most of my programming experience is with C, and it's personally hard for me to grasp the concerns involved when building modules for interpreted languages. I haven't managed to find a wiki page discussing the issues for the uninitiated and so am asking for advice here. My latest example is trying to get zbar to be able to have its cross dependencies resolved, then trying to get it to cross build. In addition to C and C++ libs, it builds Perl and Python modules. Here's my (probably faulty) thinking, from throwing stuff at the wall to see what sticks, that seems to've worked out for me: * zbar explicitly build-depends on perl, which is a Multi-Arch: allowed package. This dependency seems possibly superfluous to me (perl is in Build-Essential), so I delete it. * zbar explicitly build-depends on python3-dev, which is cross- unfriendly since it cannot be installed for multiple architectures at the same time and provides the arch-ambiguous python3-config binary. I switch it out for libpython3-dev and hope that the build system is robust enough to use pkg-config or otherwise find the Python libraries (it seems this is the case). * When building the Perl module failed, Debhelper gave me a hint that I probably needed a build-dep on perl-xs-dev (what's xs mean anyway?). I added this. After making these changes, the package now seems to cross build. The problem is I can't explain why and am in no good position to propose this to the package maintainer. Could someone direct me to a detailed discussion of these issues, or otherwise help me understand how and why these interpreter packages have been split up, and what I should be looking for when? Thanks, John
Attachment:
signature.asc
Description: This is a digitally signed message part