
| Msg # 54 of 13012 on ZZLI4417, Saturday 8-29-25, 12:34 |
| From: HELMUT GROHNE |
| To: ALL |
| Subj: Bug#1112299: resvg FTCBFS: several reaso |
From: helmut@subdivi.de Source: resvg Version: 0.45-1.2 Severity: serious Justification: missing dependency User: debian-cross@lists.debian.org Usertags: ftcbfs X-Debbugs-Cc: debian-cross@lists.debian.org,debian-rust@lists.debian.org Hi, resvg fails to cross build from source for three distinct reasons. On the surface, the core crate cannot be found. This is due to a missing dependency on libstd-rust-dev and missing dependencies usually are RC bugs. If you fix that, close this bug or lower its severity. Next up, it uses the build architecture compiler for linking the resvg executable. I spent some time trying to understand why an asked Fabian for help, but I wasn't able to figure out the root cause. I confirm, that dh-rust correctly inserts -C linker=... into the config.toml in section [target.'cfg(all())'], but the actual linker invocation lacks both the supplied linker and link-arg. I note that dh-cargo uses a different section [build], but changing the section to match dh-cargo's does not fix the problem. Would someone else see what the problem is here? Last but not least, resvg uses help2man and that is fundamentally incompatible with cross building. Your options roughly are: * Move manual pages to an Arch:all package. * Generate manual pages at source package construction time. * Cross build unreproducibly without manual pages. * Write real manual pages. * Duplicate all Build-Depends as :native and build the crate natively as well. * Write a scrip that exrtacts the HELP variable from main.rs and passes that to help2man without actually compiling the crate. None of these are attractive to me. I've done the last one elsewhere, but it is a workaround at best. I'm not sure we want to treat this report, but only the first of these items is a trivially fixable RC bug and the other items lack patches. Generally, I take issue with the tool duplication of dh-cargo vs dh-rust. This imposes extra effort onto other teams (such as cross building). I strongly recommend that you settle on one tool, but then I also recognize that the duplication does not exist without reason and each of the approaches probably provides unique advantages that warrant the duplication to you. For instance, just switching resvg to dh-cargo does not work as it fails to locate and build the contained crates. Helmut --- SoupGate-Win32 v1.05 * Origin: you cannot sedate... all the things you hate (1:229/2) |
328,089 visits
(c) 1994, bbs@darkrealms.ca