This is a test version of Biostars. For the public version, visit https://www.biostars.org.
readlink error when using abyss-dida aligner

I'm running an assembly with abyss and I wanted to give this new distributed aligner option DIDA a try. Unfortunately it did not ran successfully and I was reported the following error:

readlink: extra operand `/CleanOK/C1MLEACXX_3_0_2.cleanTrim.fq.gz'
Try `readlink --help' for more information.

I googled this and apparently it has been reported as a bug in the DIDA software (https://github.com/bcgsc/abyss/issues/87). I was just wondering if any progress has been made to get this resolved or if there are any workarounds for this issue?

thx, L.

assembly abyss dida

1 answer

Sorry about that.

I've pushed a fix to the public abyss repo. So if you compile/install from HEAD revision at https://github.com/bcgsc/abyss it should be fixed.

Alternatively, you can manually copy the bin/abyss-dida file from https://github.com/bcgsc/abyss to your ABySS installation directory or apply the following patch:

diff --git a/bin/abyss-dida b/bin/abyss-dida
index 593cfec..31cbc7d 100755
--- a/bin/abyss-dida
+++ b/bin/abyss-dida
@@ -71,7 +71,7 @@ fi
 # Add file arguments to dida command.  Convert all input file paths
 # to absolute, since we change to a temp dir below

-query=($(readlink -f "$@"))
+query=($(echo "$@" | xargs -n1 readlink -f))
 target=${query[${#query[@]}-1]}
 unset query[${#query[@]}-1]

Thx for this fix!

I came up myself with a similar patch but yours is cleaner ;-)

Log in to answer this question.