Hi Andreas, On Thu, Jun 11, 2020 at 10:45:13PM +0200, Andreas Tille wrote: > On Thu, Jun 11, 2020 at 06:26:47PM +0200, Helmut Grohne wrote: > > > > microbiomeutil fails to cross build from source, because it fails > > running cdbfasta with an "Exec format error". Usually, this indicates > > that the relevant package should be marked Multi-Arch: foreign. It is > > not entirely clear to me whether doing so is correct. Can you help me > > figure out? Please point out what is wrong below. > > > > Reading the cdbfasta manual page, it seems to be a tool for transforming > > file formats. Looking into microbiomeutil, it seems that the input > > format is textual. Textual file formats usually are > > architecture-independent. Then microbiomeutil installs the output files > > into an architecture-independent package. If those output files were > > architecture-dependent, then microbiomeutil would be wrong in doing so. > > This suggests that the marking should be correct. The question really > > is: Does the command line interface or input/output format of cdbfasta > > or cdbyank depend on the processor architecture it is being run on? If > > the answer is "no", please mark it Multi-Arch: foreign. If the answer is > > "yes", please close this bug. If the answer is not clear, please get in > > touch we me an we can figure out together. > > Getting in touch with you and the Debian Med mailing list since the > answer is not clear to me.
So can you give some more background about the file formats involved? As far as I can see, those FASTA files are always textual. Is that correct? It doesn't seem likely that anything architetcure-specific would be found inside them. To the contrary, it seems like FASTA is an exchange format. Is that also correct? The output files of cdbfasta are binary. The README on github[1] says: | The index files are now architecture independent, the same index file can be | created and used on many different Unix platform (be it 32bit/64bit, | big-endian or little-endian architectures) and even Windows. Is the cdbfasta in Debian recent enough to be covered by this? Does a recent cdbfasta allow working with old, architecture-specific index files created from earlier releases? Is there any other way of interacting with cdbfasta or cdbyank where the processor architecture would matter? Helmut [1] https://github.com/gpertea/cdbfasta, maybe updating the homepage of cdbfasta to this would be good? The sourceforge page isn't that helpful.