Hi,
I was trying to add autopkgtests to bbmap [1] but I'm having some trouble
getting it to work.
Here is the command I'm trying to run along with the output (and I've
attached the input file with this email).

> bbduk.sh in=SRR1753664_1.min.fastq out=clean1.fq
/usr/bin/bbduk.sh: line 348: /usr/share/bbmap/calcmem: No such file or
directory
/usr/bin/bbduk.sh: line 349: setEnvironment: command not found
/usr/bin/bbduk.sh: line 350: parseXmx: command not found
/usr/bin/bbduk.sh: line 354: freeRam: command not found
java -Xmxm -Xmsm -cp /usr/share/java/bbmap.jar jgi.BBDuk
in=SRR1753664_1.min.fastq out=clean1.fq
Invalid maximum heap size: -Xmxm
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.


It says that it couldn't find calcmem, which is probably because in
d/rules, line 30 is commented out.

# cp -a calcmem.sh $(PKGSHAREDIR)/calcmem # we don't have any name
space collision when keeping .sh extension

After uncommenting this and building, this error goes away, but I get the
following error:

> bbduk.sh in=SRR1753664_1.min.fastq out=clean1.fq
java -ea -Xmx1110m -Xms1110m -cp /usr/share/java/bbmap.jar jgi.BBDuk
in=SRR1753664_1.min.fastq out=clean1.fq
Executing jgi.BBDuk [in=SRR1753664_1.min.fastq, out=clean1.fq]
Version 38.84

Warning!  Cannot find primes.txt.gz
/home/pranav/code/debian-med/bbmap/SRR1753664/file:/usr/share/java/bbmap.jar!/primes.txt.gz
java.lang.Exception
        at dna.Data.findPath(Data.java:1246)
        at dna.Data.findPath(Data.java:1193)
        at shared.Primes.fetchPrimes(Primes.java:167)
        at shared.Primes.<clinit>(Primes.java:177)
        at kmer.ScheduleMaker.<clinit>(ScheduleMaker.java:155)
        at jgi.BBDuk.<init>(BBDuk.java:984)
        at jgi.BBDuk.main(BBDuk.java:77)
Exception in thread "main" java.lang.ExceptionInInitializerError
        at kmer.ScheduleMaker.<clinit>(ScheduleMaker.java:155)
        at jgi.BBDuk.<init>(BBDuk.java:984)
        at jgi.BBDuk.main(BBDuk.java:77)
Caused by: java.lang.NullPointerException
        at fileIO.ByteFile.<init>(ByteFile.java:43)
        at fileIO.ByteFile1.<init>(ByteFile1.java:98)
        at fileIO.ByteFile1.<init>(ByteFile1.java:94)
        at shared.Primes.fetchPrimes(Primes.java:169)
        at shared.Primes.<clinit>(Primes.java:177)
        ... 3 more


I tried running the same command using the upstream package, and it works
fine, so it's certainly some issue with the packaging here.
It appears to have something to do with line 33 in d/rules, where the path
is being replaced from ".DIR""current/" to the jar file.
I've never worked with .jar files or Java in general, so I don't know what
the exclamation mark means here: bbmap.jar!/primes.txt.gz
Is it trying to find primes.txt.gz inside the jar file? If yes, looking at
d/rules, it appears that nothing from resources/ in the original package is
being installed.
If this is indeed the case, please take a look and let me know how I can
install these files and update the relevant paths.

Thanks,
Pranav

[1] https://salsa.debian.org/med-team/bbmap

Attachment: SRR1753664_1.min.fastq
Description: Binary data

Reply via email to