GuoliangLi-HZAU / BatMeth2

BS-seq analysis pipeline
38 stars 12 forks source link

I have tried all of the 4 release packages. None of them can be installed in ubuntu 18.04. The error is below. please guide me thank you very much! #15

Open Yippee00 opened 4 years ago

Yippee00 commented 4 years ago

package here download is batMeth2-master.

./configyre # is ok.

checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... no checking for mawk... mawk checking whether make sets $(MAKE)... yes checking for g++... g++ checking for C++ compiler default output file name... a.out checking whether the C++ compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking for style of include used by make... GNU checking dependency style of g++... gcc3 checking for gcc... gcc checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking dependency style of gcc... gcc3 checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking malloc.h usability... yes checking malloc.h presence... yes checking for malloc.h... yes checking stddef.h usability... yes checking stddef.h presence... yes checking for stddef.h... yes checking for stdint.h... (cached) yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking sys/socket.h usability... yes checking sys/socket.h presence... yes checking for sys/socket.h... yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking for unistd.h... (cached) yes checking for an ANSI C-conforming const... yes checking for size_t... yes checking whether time.h and sys/time.h may both be included... yes checking for working volatile... yes checking for ptrdiff_t... yes checking for stdlib.h... (cached) yes checking for GNU libc compatible malloc... yes checking for stdlib.h... (cached) yes checking for GNU libc compatible realloc... yes checking for vprintf... yes checking for _doprnt... no checking for floor... no checking for gettimeofday... yes checking for memmove... yes checking for memset... yes checking for pow... no checking for socket... yes checking for sqrt... no checking for strchr... yes checking for strdup... yes checking for strtoul... yes checking Checking for SIMD support and for a gcc bug...... OK... configure: creating ./config.status config.status: creating Makefile config.status: creating src/Makefile config.status: creating scripts/Makefile config.status: creating config.h config.status: config.h is unchanged config.status: executing depfiles commands

then, make. The problem is coming!

g++ -DHAVE_CONFIG_H -I. -I.. -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -MT fastsw.o -MD -MP -MF .deps/fastsw.Tpo -c -o fastsw.o fastsw.cpp mv -f .deps/fastsw.Tpo .deps/fastsw.Po g++ -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -o penguin print.o filters.o utils.o batlib.o rqindex.o penguin.o map.o bfix.o BWT.o MiscUtilities.o MemManager.o TextConverter.o r250.o QSufSort.o ssw.o command.o swroutines.o iniparser.o inistrlib.o dictionary.o DNACount.o Timing.o Socket.o HSP.o HSPstatistic.o karlin.o fastsw.o
penguin.o:在函数‘main’中: /mnt/sdb/zq/software/BatMeth2-master/src/penguin.cpp:368:对‘gzopen’未定义的引用 /mnt/sdb/zq/software/BatMeth2-master/src/penguin.cpp:471:对‘gzrewind’未定义的引用 /mnt/sdb/zq/software/BatMeth2-master/src/penguin.cpp:369:对‘gzopen’未定义的引用 /mnt/sdb/zq/software/BatMeth2-master/src/penguin.cpp:475:对‘gzrewind’未定义的引用 batlib.o:在函数‘Analyze_File(INFILE&, LEN&)’中: /mnt/sdb/zq/software/BatMeth2-master/src/batlib.cpp:94:对‘gzgets’未定义的引用 /mnt/sdb/zq/software/BatMeth2-master/src/batlib.cpp:99:对‘gzgets’未定义的引用 /mnt/sdb/zq/software/BatMeth2-master/src/batlib.cpp:121:对‘gzrewind’未定义的引用 /mnt/sdb/zq/software/BatMeth2-master/src/batlib.cpp:113:对‘gzgets’未定义的引用 batlib.o:在函数‘Read_Tag_gz(void*, char, READ&)’中: /mnt/sdb/zq/software/BatMeth2-master/src/batlib.cpp:461:对‘gzgets’未定义的引用 /mnt/sdb/zq/software/BatMeth2-master/src/batlib.cpp:465:对‘gzgets’未定义的引用 /mnt/sdb/zq/software/BatMeth2-master/src/batlib.cpp:469:对‘gzgets’未定义的引用 /mnt/sdb/zq/software/BatMeth2-master/src/batlib.cpp:471:对‘gzgets’未定义的引用 batlib.o:/mnt/sdb/zq/software/BatMeth2-master/src/batlib.cpp:585: 跟着更多未定义的参考到 gzgets collect2: error: ld returned 1 exit status Makefile:361: recipe for target 'penguin' failed make[2]: [penguin] Error 1 make[2]: 离开目录“/mnt/sdb/zq/software/BatMeth2-master/src” Makefile:255: recipe for target 'all-recursive' failed make[1]: [all-recursive] Error 1 make[1]: 离开目录“/mnt/sdb/zq/software/BatMeth2-master” Makefile:193: recipe for target 'all' failed make: *** [all] Error 2

when I use make -nogzip and make copy -nogzip. it looks like ok (without errors). But the /bin was not appeared. Which was strangely.

**

make -nogzip

**

if test ! -f config.h; then \ rm -f stamp-h1; \ make stamp-h1; \ else :; fi make all-recursive make[1]: 进入目录“/mnt/sdb/zq/software/BatMeth2-master” fail= failcom='exit 1'; \ for f in x $MAKEFLAGS; do \ case $f in \ = | --[!k]);; \ k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=echo all-recursive | sed s/-recursive//; \ list='src scripts src/batDMR'; for subdir in $list; do \ echo "Making $target in $subdir"; \ if test "$subdir" = "."; then \ dot_seen=yes; \ local_target="$target-am"; \ else \ local_target="$target"; \ fi; \ (CDPATH="${ZSH_VERSION+.}:" && cd $subdir && make $local_target) \ || eval $failcom; \ done; \ if test "$dot_seen" = "no"; then \ make "$target-am" || exit 1; \ fi; test -z "$fail" Making all in src make[2]: 进入目录“/mnt/sdb/zq/software/BatMeth2-master/src” rm -f penguin g++ -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -o penguin print.o filters.o utils.o batlib.o rqindex.o penguin.o map.o bfix.o BWT.o MiscUtilities.o MemManager.o TextConverter.o r250.o QSufSort.o ssw.o command.o swroutines.o iniparser.o inistrlib.o dictionary.o DNACount.o Timing.o Socket.o HSP.o HSPstatistic.o karlin.o fastsw.o
g++ -DHAVE_CONFIG_H -I. -I.. -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -MT penguin-a.o -MD -MP -MF .deps/penguin-a.Tpo -c -o penguin-a.o penguin-a.cpp mv -f .deps/penguin-a.Tpo .deps/penguin-a.Po rm -f penguin-a g++ -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -o penguin-a print.o filters.o utils.o batlib.o rqindex.o penguin-a.o map.o bfix.o BWT.o MiscUtilities.o MemManager.o TextConverter.o r250.o QSufSort.o ssw.o command.o swroutines.o iniparser.o inistrlib.o dictionary.o DNACount.o Timing.o Socket.o HSP.o HSPstatistic.o karlin.o fastsw.o
gcc -DHAVE_CONFIG_H -I. -I.. -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -MT bwtformatdb.o -MD -MP -MF .deps/bwtformatdb.Tpo -c -o bwtformatdb.o bwtformatdb.c mv -f .deps/bwtformatdb.Tpo .deps/bwtformatdb.Po gcc -DHAVE_CONFIG_H -I. -I.. -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -MT BWTConstruct.o -MD -MP -MF .deps/BWTConstruct.Tpo -c -o BWTConstruct.o BWTConstruct.c mv -f .deps/BWTConstruct.Tpo .deps/BWTConstruct.Po rm -f bwtformatdb gcc -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -o bwtformatdb bwtformatdb.o BWT.o BWTConstruct.o MiscUtilities.o MemManager.o TextConverter.o r250.o QSufSort.o iniparser.o inistrlib.o dictionary.o DNACount.o Timing.o Socket.o HSP.o HSPstatistic.o karlin.o
g++ -DHAVE_CONFIG_H -I. -I.. -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -MT reverse.o -MD -MP -MF .deps/reverse.Tpo -c -o reverse.o reverse.cpp mv -f .deps/reverse.Tpo .deps/reverse.Po rm -f reverse g++ -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -o reverse reverse.o
g++ -DHAVE_CONFIG_H -I. -I.. -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -MT filter.o -MD -MP -MF .deps/filter.Tpo -c -o filter.o filter.cpp mv -f .deps/filter.Tpo .deps/filter.Po rm -f filter g++ -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -o filter filter.o
g++ -DHAVE_CONFIG_H -I. -I.. -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -MT methyGff.o -MD -MP -MF .deps/methyGff.Tpo -c -o methyGff.o methyGff.cpp mv -f .deps/methyGff.Tpo .deps/methyGff.Po rm -f methyGff g++ -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -o methyGff methyGff.o
g++ -DHAVE_CONFIG_H -I. -I.. -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -MT build_index_rrbs.o -MD -MP -MF .deps/build_index_rrbs.Tpo -c -o build_index_rrbs.o build_index_rrbs.cpp mv -f .deps/build_index_rrbs.Tpo .deps/build_index_rrbs.Po rm -f build_index_rrbs g++ -w -O3 -funroll-loops -maccumulate-outgoing-args -msse2 -lz -lm -pthread -g -O2 -o build_index_rrbs build_index_rrbs.o
make[2]: 离开目录“/mnt/sdb/zq/software/BatMeth2-master/src” Making all in scripts make[2]: 进入目录“/mnt/sdb/zq/software/BatMeth2-master/scripts” make[2]: 对“all”无需做任何事。 make[2]: 离开目录“/mnt/sdb/zq/software/BatMeth2-master/scripts” Making all in src/batDMR make[2]: 进入目录“/mnt/sdb/zq/software/BatMeth2-master/src/batDMR” g++ -Wall -fmessage-length=50 -c -o regression.o regression.cpp -I/mnt/sdb/zq/software/BatMeth2-master/src/batDMR -I./ -lgsl -lgslcblas -lm g++ -Wall -fmessage-length=50 -c -o combine_pvals.o combine_pvals.cpp -I/mnt/sdb/zq/software/BatMeth2-master/src/batDMR -I./ -lgsl -lgslcblas -lm g++ -Wall -fmessage-length=50 -c -o merge.o merge.cpp -I/mnt/sdb/zq/software/BatMeth2-master/src/batDMR -I./ -lgsl -lgslcblas -lm g++ -Wall -fmessage-length=50 -c -o /mnt/sdb/zq/software/BatMeth2-master/src/batDMR/GenomicRegion.o /mnt/sdb/zq/software/BatMeth2-master/src/batDMR/GenomicRegion.cpp -I/mnt/sdb/zq/software/BatMeth2-master/src/batDMR -I./ -lgsl -lgslcblas -lm g++ -Wall -fmessage-length=50 -c -o /mnt/sdb/zq/software/BatMeth2-master/src/batDMR/MethpipeFiles.o /mnt/sdb/zq/software/BatMeth2-master/src/batDMR/MethpipeFiles.cpp -I/mnt/sdb/zq/software/BatMeth2-master/src/batDMR -I./ -lgsl -lgslcblas -lm g++ -Wall -fmessage-length=50 -o batDMR batDMR.cpp regression.o combine_pvals.o merge.o /mnt/sdb/zq/software/BatMeth2-master/src/batDMR/GenomicRegion.o /mnt/sdb/zq/software/BatMeth2-master/src/batDMR/MethpipeFiles.o -I/mnt/sdb/zq/software/BatMeth2-master/src/batDMR -I./ -lgsl -lgslcblas -lm make[2]: 离开目录“/mnt/sdb/zq/software/BatMeth2-master/src/batDMR” make[2]: 进入目录“/mnt/sdb/zq/software/BatMeth2-master” if test ! -f config.h; then \ rm -f stamp-h1; \ make stamp-h1; \ else :; fi make[2]: 离开目录“/mnt/sdb/zq/software/BatMeth2-master” make[1]: 离开目录“/mnt/sdb/zq/software/BatMeth2-master”

**

make copy -nogzip

**

g++ ./src/calmeth.cpp -o ./src/calmeth -m64 -I./src/samtools-0.1.18/ -L./src/samtools-0.1.18/ -lbam -lz g++ ./src/splitSam.cpp -o ./src/splitSam -m64 -I./src/samtools-0.1.18/ -L./src/samtools-0.1.18/ -lbam -lz -pthread if [ -d "bin" ]; then echo bin exists; else mkdir bin; fi g++ -o ./scripts/BatMeth2 ./scripts/BatMeth2.cpp -lpthread g++ ./scripts/report2html.cpp -o ./scripts/report2html cp ./scripts/BatMeth2 ./bin/batmeth2 cp scripts/strip.pl bin cp scripts/report2html bin cp scripts/b2c.pl bin cp scripts/build_complement bin cp scripts/filter.pl bin cp scripts/build_indexX bin cp scripts/build_all bin cp scripts/ann2loc.pl bin cp scripts/build_location.pl bin cp scripts/build_revcmp bin cp scripts/complement.pl bin cp scripts/ReverseComplteFQ bin cp src/bwtformatdb bin cp src/reverse bin cp src/penguin bin cp src/penguin-a bin cp src/calmeth bin cp src/batmethindex bin cp src/filter bin cp bwtformatdb.ini bin cp src/splitSam bin cp src/methyGff bin cp src/methyPlot bin cp src/.r bin cp scripts/.r bin cp src/DMCannotation bin cp scripts/GeneMethHeatmap ./bin/ cp scripts/chrLenExtract ./bin cp scripts/combined.element bin cp scripts/batmeth2-align bin cp scripts/BatMeth2 bin cp scripts/build_ann_location.pl bin cp scripts/preGenome bin cp src/batDMR/batDMR ./bin cp src/genome_filter bin cp src/build_index_rrbs bin

**

the installation fold is without /bin :

** aclocal.m4 config.h config.status depcomp Makefile.am multirun.conf scripts autom4te.cache config.h.in configure install-sh Makefile.in output_details.pdf src bwtformatdb.ini config.log configure.in Makefile missing README.md stamp-h1

I have installed all the dependencies. The problem is still there which I can not fix. Thank you for your help!

Yippee00 commented 4 years ago

anyone can help me? thank you very much!

ZhouQiangwei commented 4 years ago

I'm very sorry for the late reply, the release version is not the latest version. I've added a new release version of 'batmeth2-v2.1', or you can download the latest version from git clone. Thanks

ZhouQiangwei commented 3 years ago

please download Zlib library and install

wget https://www.dna-asmdb.com/tools/zlib-1.2.11.zip unzip zlib-1.2.11.zip cd zlib-1.2.11/ pwd #get location

./configure --prefix=/disk1/glli/tools/zlib-1.2.11/ make make install

Add environment variables to ~/.bashrc

export C_INCLUDE_PATH=$C_INCLUDE_PATH:/disk1/glli/tools/zlib-1.2.11/include export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/disk1/glli/tools/zlib-1.2.11/include export LD_LIBRARY_PATH=$LD_LIBRARY_PATH::/disk1/glli/tools/zlib-1.2.11/lib export LIBRARY_PATH=$LIBRARY_PATH::/disk1/glli/tools/zlib-1.2.11/lib And then:

$ source ~/.bash

It is recommended to log out and log in to the server again to ensure that the environment variables take effect.

Please download the latest version through ‘git clone’ and try it?