jfmrod / MAPseq

highthroughput rRNA sequence classification and OTU mapping for metagenomic samples
Other
24 stars 7 forks source link

Installation problems #15

Closed jacarrico closed 4 years ago

jacarrico commented 4 years ago

Greetings was installing MAPseq in ubuntu on windows wsl and when running make I got this error:

etable.cpp: In function ‘estrarrayof<etable> tablesLoad(const estr&, const evarhash&)’:
etable.cpp:242:3: error: ‘egzfile’ was not declared in this scope
   egzfile f;
   ^~~~~~~
etable.cpp:242:3: note: suggested alternative: ‘edcfile’
   egzfile f;
   ^~~~~~~
   edcfile
etable.cpp:260:8: error: ‘f’ was not declared in this scope
   if (!f.open(filename,"r")) { lerror(filename); return(ts); }
        ^
etable.cpp:271:15: error: ‘f’ was not declared in this scope
   if (header) f.readarr(line,headerarr,sep);
               ^
etable.cpp:273:10: error: ‘f’ was not declared in this scope
   while (f.readarr(line,arr,sep)){
          ^
etable.cpp:315:3: error: ‘f’ was not declared in this scope
   f.close();
   ^
etable.cpp: In function ‘etable etableLoad(const estr&, const evarhash&)’:
etable.cpp:362:3: error: ‘egzfile’ was not declared in this scope
   egzfile f;
   ^~~~~~~
etable.cpp:362:3: note: suggested alternative: ‘edcfile’
   egzfile f;
   ^~~~~~~
   edcfile
etable.cpp:372:8: error: ‘f’ was not declared in this scope
   if (!f.open(filename,"r")) { lerror(filename); return(t); }
        ^
etable.cpp:376:15: error: ‘f’ was not declared in this scope
   if (header) f.readarr(line,headerarr,sep);
               ^
etable.cpp:380:10: error: ‘f’ was not declared in this scope
   while (f.readarr(line,arr,sep)){
          ^
Makefile:1105: recipe for target 'etable.lo' failed
make[3]: *** [etable.lo] Error 1
make[3]: Leaving directory '/home/jcarrico/NGStools/MAPseq/libs/eutils'
Makefile:766: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/home/jcarrico/NGStools/MAPseq/libs/eutils'
Makefile:683: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/jcarrico/NGStools/MAPseq'
Makefile:461: recipe for target 'all' failed
make: *** [all] Error 2
(base)

Any idea how can this be solved?

jfmrod commented 4 years ago

Olá João,

Obrigado por entrares em contacto com esse problema. Uma maneira de resolver isso, se quiseres analisar ficheiros em formato fasta comprimidos (gz), é instalando a biblioteca zlib. Mas se não precisares dessa opção basta actualizares a biblioteca eutils (incluida com o mapseq) que eu já corrigi o erro (os scripts deveriam detectar que não tens essa biblioteca e evitar usa-la).

Para actualizares a biblioteca eutils (que se encontra na directoria libs/eutiils), basta mudares para essa directoria e executares o comando “svn update”.

Diz-me se encontrares mais algum problema.

João

On 11 Mar 2020, at 12:11, João André Carriço notifications@github.com wrote:

Greetings was installing MAPseq in ubuntu on windows wsl and whenrunning mak I got this error:

etable.cpp: In function ‘estrarrayof tablesLoad(const estr&, const evarhash&)’: etable.cpp:242:3: error: ‘egzfile’ was not declared in this scope egzfile f; ^~~ etable.cpp:242:3: note: suggested alternative: ‘edcfile’ egzfile f; ^~~ edcfile etable.cpp:260:8: error: ‘f’ was not declared in this scope if (!f.open(filename,"r")) { lerror(filename); return(ts); } ^ etable.cpp:271:15: error: ‘f’ was not declared in this scope if (header) f.readarr(line,headerarr,sep); ^ etable.cpp:273:10: error: ‘f’ was not declared in this scope while (f.readarr(line,arr,sep)){ ^ etable.cpp:315:3: error: ‘f’ was not declared in this scope f.close(); ^ etable.cpp: In function ‘etable etableLoad(const estr&, const evarhash&)’: etable.cpp:362:3: error: ‘egzfile’ was not declared in this scope egzfile f; ^~~ etable.cpp:362:3: note: suggested alternative: ‘edcfile’ egzfile f; ^~~ edcfile etable.cpp:372:8: error: ‘f’ was not declared in this scope if (!f.open(filename,"r")) { lerror(filename); return(t); } ^ etable.cpp:376:15: error: ‘f’ was not declared in this scope if (header) f.readarr(line,headerarr,sep); ^ etable.cpp:380:10: error: ‘f’ was not declared in this scope while (f.readarr(line,arr,sep)){ ^ Makefile:1105: recipe for target 'etable.lo' failed make[3]: [etable.lo] Error 1 make[3]: Leaving directory '/home/jcarrico/NGStools/MAPseq/libs/eutils' Makefile:766: recipe for target 'all' failed make[2]: [all] Error 2 make[2]: Leaving directory '/home/jcarrico/NGStools/MAPseq/libs/eutils' Makefile:683: recipe for target 'all-recursive' failed make[1]: [all-recursive] Error 1 make[1]: Leaving directory '/home/jcarrico/NGStools/MAPseq' Makefile:461: recipe for target 'all' failed make: [all] Error 2 (base) Any idea how can this be solved?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/jfmrod/MAPseq/issues/15?email_source=notifications&email_token=ABIKXHUDL2MKOYMUX4ZSHALRG5WWXA5CNFSM4LFTKL2KYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IUFVFYQ, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABIKXHUSGRRJTT2XR3B7P5LRG5WWXANCNFSM4LFTKL2A.

jacarrico commented 4 years ago

Olá João. voltei a correr tudo desde o setup apos fazer o'svn update' como sugeristes e agora o erro que aparece é o seguinte:

ibtool: error: '/home/msarahan/miniconda2/conda-bld/compilers_linux-64_1507259624353/work/gcc_built/x86_64-conda_cos6-linux-gnu/lib/../lib/lib stdc++.la' is not a valid libtool archive make[3]: [Makefile:870: libeutils.la] Error 1 make[3]: Leaving directory '/home/jcarrico/NGStools/MAPseq/libs/eutils' make[2]: [Makefile:766: all] Error 2 make[2]: Leaving directory '/home/jcarrico/NGStools/MAPseq/libs/eutils' make[1]: [Makefile:683: all-recursive] Error 1 make[1]: Leaving directory '/home/jcarrico/NGStools/MAPseq' make: [Makefile:461: all] Error `

Obrigado desde já pela ajuda. JAC

jfmrod commented 4 years ago

Olá João,

Não sei bem o que está a causar esse problema. Parece que o programa "libtool" não reconhece uma das bibliotecas instaladas no teu sistema. Uma sugestão que vi noutro site, indica que se deve remover esse ficheiro (sugiro mudar o nome para o caso de outra coisa quebrar), o ficheiro em causa seria: /home/msarahan/miniconda2/conda-bld/compilers_linux-64_1507259624353/work/gcc_built/x86_64-conda_cos6-linux-gnu/lib/../lib/lib stdc++.la

Aqui está o link: https://www.linuxquestions.org/questions/linux-from-scratch-13/lfs-6-14-gmp-6-1-0-libtool-error-libstdc-ls-is-not-a-valid-libtool-archive-4175586676/

Espero que ajude. As versões precompiladas para linux não funcionam no teu sistema? O Ubuntu que falas em windows é só a consola se não me engano? Posso tentar criar uma versão precompilada para windows daqui a uns dias.