Question: Velvet-SC installation/compilation issues
1
gravatar for JV
4.7 years ago by
JV380
Germany
JV380 wrote:

Hi,

I want to try out Velvet-SC in the context of single cell genome assemblies.

I downloaded the source code from their website http://bix.ucsd.edu/projects/singlecell/.

however, when i try to compile it (using the arguments i also use for standard velvet, e.g "CATEGORIES=6", "MAXKMERLENGTH=120", "BIGASSEMBLY=1", "OPENMP=1"), I get a lot of errors and the make script exits with "Error 1"

This is the output i get when running make:


MP=1'
rm obj/*.o obj/dbg/*.o
rm: cannot remove ‘obj/dbg/*.o’: No such file or directory
make: [cleanobj] Error 1 (ignored)
cd third-party/zlib-1.2.3; ./configure; make; rm minigzip.o; rm example.o
Checking for gcc...
Building static library libz.a version 1.2.3 with gcc.
Checking for unistd.h... Yes.
Checking whether to use vs[n]printf() or s[n]printf()... using vs[n]printf()
Checking for vsnprintf() in stdio.h... Yes.
Checking for return value of vsnprintf()... Yes.
Checking for errno.h... Yes.
Checking for mmap support... Yes.
make[1]: Entering directory `/home/user/Downloads/velvet-sc/third-party/zlib-1.2.3'
gcc -O3 -DUSE_MMAP   -c -o example.o example.c
gcc -O3 -DUSE_MMAP   -c -o adler32.o adler32.c
gcc -O3 -DUSE_MMAP   -c -o compress.o compress.c
gcc -O3 -DUSE_MMAP   -c -o crc32.o crc32.c
gcc -O3 -DUSE_MMAP   -c -o gzio.o gzio.c
gcc -O3 -DUSE_MMAP   -c -o uncompr.o uncompr.c
gcc -O3 -DUSE_MMAP   -c -o deflate.o deflate.c
gcc -O3 -DUSE_MMAP   -c -o trees.o trees.c
gcc -O3 -DUSE_MMAP   -c -o zutil.o zutil.c
gcc -O3 -DUSE_MMAP   -c -o inflate.o inflate.c
gcc -O3 -DUSE_MMAP   -c -o infback.o infback.c
gcc -O3 -DUSE_MMAP   -c -o inftrees.o inftrees.c
gcc -O3 -DUSE_MMAP   -c -o inffast.o inffast.c
ar rc libz.a adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o zutil.o inflate.o infback.o inftrees.o inffast.o
gcc -O3 -DUSE_MMAP -o example example.o -L. libz.a
gcc -O3 -DUSE_MMAP   -c -o minigzip.o minigzip.c
gcc -O3 -DUSE_MMAP -o minigzip minigzip.o -L. libz.a
make[1]: Leaving directory `/home/user/Downloads/velvet-sc/third-party/zlib-1.2.3'
mkdir -p obj
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/tightString.c -o obj/tightString.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/run.c -o obj/run.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/splay.c -o obj/splay.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/splayTable.c -o obj/splayTable.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/graph.c -o obj/graph.o
src/graph.c: In function ‘addBufferToDescriptor’:
src/graph.c:870:14: warning: variable ‘twinDescr’ set but not used [-Wunused-but-set-variable]
  Descriptor *twinDescr;
              ^
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/run2.c -o obj/run2.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/fibHeap.c -o obj/fibHeap.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/fib.c -o obj/fib.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/concatenatedGraph.c -o obj/concatenatedGraph.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/passageMarker.c -o obj/passageMarker.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/graphStats.c -o obj/graphStats.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/correctedGraph.c -o obj/correctedGraph.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/dfib.c -o obj/dfib.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/dfibHeap.c -o obj/dfibHeap.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/recycleBin.c -o obj/recycleBin.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/readSet.c -o obj/readSet.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/shortReadPairs.c -o obj/shortReadPairs.o
src/shortReadPairs.c: In function ‘pushNeighbours’:
src/shortReadPairs.c:928:8: warning: variable ‘lastCandidate’ set but not used [-Wunused-but-set-variable]
  Node *lastCandidate = NULL;
        ^
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/locallyCorrectedGraph.c -o obj/locallyCorrectedGraph.o
src/locallyCorrectedGraph.c: In function ‘tourBusNode_local’:
src/locallyCorrectedGraph.c:380:8: warning: variable ‘destination’ set but not used [-Wunused-but-set-variable]
  Node *destination;
        ^
src/locallyCorrectedGraph.c: In function ‘clipTipsVeryHardLocally’:
src/locallyCorrectedGraph.c:427:18: warning: variable ‘twin’ set but not used [-Wunused-but-set-variable]
  Node *current, *twin;
                  ^
src/locallyCorrectedGraph.c: In function ‘correctGraphLocally’:
src/locallyCorrectedGraph.c:517:8: warning: variable ‘index’ set but not used [-Wunused-but-set-variable]
  IDnum index, nodeIndex;
        ^
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/graphReConstruction.c -o obj/graphReConstruction.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/roadMap.c -o obj/roadMap.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/preGraph.c -o obj/preGraph.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/preGraphConstruction.c -o obj/preGraphConstruction.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/concatenatedPreGraph.c -o obj/concatenatedPreGraph.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/readCoherentGraph.c -o obj/readCoherentGraph.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/crc.c -o obj/crc.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/utility.c -o obj/utility.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/kmer.c -o obj/kmer.o
gcc -Wall -O3 -D MAXKMERLENGTH=120 -D CATEGORIES=6 -c src/scaffold.c -o obj/scaffold.o
gcc -Wall -O3 -lm -o velveth obj/tightString.o obj/run.o obj/recycleBin.o obj/splay.o obj/splayTable.o obj/readSet.o obj/crc.o obj/utility.o obj/kmer.o third-party/zlib-1.2.3/*.o
obj/readSet.o: In function `convertConfidenceScores':
readSet.c:(.text+0x3c47): undefined reference to `pow'
readSet.c:(.text+0x3c8a): undefined reference to `pow'
collect2: error: ld returned 1 exit status
make: *** [velveth] Error 1


Any Ideas/Suggestions?

ADD COMMENTlink modified 4.7 years ago • written 4.7 years ago by JV380
2
gravatar for John Marshall
4.7 years ago by
John Marshall1.5k
Glasgow, Scotland
John Marshall1.5k wrote:

The significant problem is here:

gcc -Wall -O3 -lm -o velveth obj/tightString.o obj/run.o obj/recycleBin.o obj/splay.o obj/splayTable.o obj/readSet.o obj/crc.o obj/utility.o obj/kmer.o third-party/zlib-1.2.3/*.o

Find the link commands in the Makefile, and move -lm to the end of the line.

You can arrange this at the top of the Makefile by removing -lm from LDFLAGS and adding it to Z_LIB_FILES instead. (Wow, that's forked from a prehistoric version of velvet!)

ADD COMMENTlink written 4.7 years ago by John Marshall1.5k
0
gravatar for JV
4.7 years ago by
JV380
Germany
JV380 wrote:

Thanks That worked!

And yes, it is derived from a very outdated version of velvet. It seems velvet-sc is not beeing supported anymore. But I have seen it referenced fairly often and since i am quite familiar with velvet, wanted to give it a try (and compare it to other assemblers).

 

 

ADD COMMENTlink written 4.7 years ago by JV380
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 1236 users visited in the last hour