Thank you for your suggestions. I forgot to include part of my code where x is defined, which is later used to define megProj@align.exe in the source code. I've updated both packages from the heibl github repositories, and in the newest version of ips the path argument has been replaced by exec to define the location of the executable. I think that might be the problem as the path argument seems to be automatically supplied by stepC(x) (source) and alignSpecies() (source) as part of the automated pipeline process, as in I can't omit it without changing the source code. I've lodged an issue request in the megaptera repository to this end.
Here is the source code referring to megProj@align.exe, which is the same as x@align.exe (defined above), as well as my session information:
> x@align.exe
[1] "C:/Users/Gregory/Programs/MAFFT/mafft"
# the source code:
## aligning -- either sequential or parallel
## -----------------------------------------
if ( length(spec) > 0 ) {
cpus <- x@params@cpus
if ( length(spec) < cpus | !x@params@parallel ){
lapply(spec, alignSpecies, megProj = x)
} else {
sfInit(parallel = TRUE, cpus = cpus,
type = x@params@cluster.type)
sfLibrary("megaptera", character.only = TRUE)
megProj <- x
sfExport("spec", "megProj", "acc.tab",
"max.bp", "align.exe", "logfile")
sfLapply(x = spec, fun = alignSpecies, megProj = megProj)
sfStop()
}
}
dbDisconnect(conn)
# and my session info
> session_info()
Session info ---------------------------------------------------------
setting value
version R version 3.3.2 (2016-10-31)
system x86_64, mingw32
ui RStudio (1.0.136)
language (EN)
collate English_United States.1252
tz America/Chicago
date 2017-03-22
Packages -------------------------------------------------------------
package * version date source
ips * 0.0-10 2017-03-21 Github (heibl/ips@165b251)
megaptera * 1.0-52 2017-03-21 Github (heibl/megaptera@8beac0d)
...
I believe this may be an issue with the
alignSpecies()function that is included towards the end ofstepC(x). This function includes an external call to theips::mafft()alignment wrapper, but doesn't seem to implement it correctly. Potentially this is because I'm using a Windows computer?