Giter Site home page Giter Site logo

tgac / kat Goto Github PK

View Code? Open in Web Editor NEW
200.0 23.0 51.0 50.2 MB

The K-mer Analysis Toolkit (KAT) contains a number of tools that analyse and compare K-mer spectra.

Home Page: http://www.earlham.ac.uk/kat-tools

License: GNU General Public License v3.0

Shell 0.29% C++ 87.86% Python 8.04% Makefile 0.38% M4 3.43%

kat's Issues

Compilation of gnuplot library fails

make fails on src/libkat_2_1_la-gnuplot_i.lo:

make[2]: Entering directory '/home/johnomics/bin/KAT/kat-2.1.1/lib'
  CXX      src/libkat_2_1_la-gnuplot_i.lo
src/gnuplot_i.cc: In destructor 'Gnuplot::~Gnuplot()':
src/gnuplot_i.cc:412:74: error: throw will always call terminate() [-Werror=terminate]
         throw GnuplotException("Problem closing communication to gnuplot");
                                                                          ^
src/gnuplot_i.cc:412:74: note: in C++11 destructors default to noexcept
cc1plus: all warnings being treated as errors
Makefile:538: recipe for target 'src/libkat_2_1_la-gnuplot_i.lo' failed
make[2]: *** [src/libkat_2_1_la-gnuplot_i.lo] Error 1
make[2]: Leaving directory '/home/johnomics/bin/KAT/kat-2.1.1/lib'
Makefile:550: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/johnomics/bin/KAT/kat-2.1.1'
Makefile:442: recipe for target 'all' failed
make: *** [all] Error 2

Using gcc version 6.2.1, KAT versions 2.2.0 and 2.1.1. Please could you suggest a fix for this?

configure.ac:8: error: possibly undefined macro: AC_PROG_LIBTOOL

I was trying to compile KAT on a ubuntu distribution (Linux minerva 3.13.0-96-generic #143-Ubuntu SMP Mon Aug 29 20:15:20 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux) and came across the following error:

ks575:~/software/KAT/KAT$ ./autogen.sh autoreconf: Entering directory.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force -I m4 ${ACLOCAL_FLAGS}
autoreconf: configure.ac: tracing
autoreconf: configure.ac: adding subdirectory deps/jellyfish-2.2.0 to autoreconf
autoreconf: Entering directory deps/jellyfish-2.2.0' autoreconf: running: aclocal --force -I m4 autoreconf: configure.ac: not using Libtool autoreconf: running: /home2/ISAD/ks575/software/KAT/autoconf-2.69/build/bin/autoconf --force configure.ac:8: error: possibly undefined macro: AC_PROG_LIBTOOL If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. autoreconf: /home2/ISAD/ks575/software/KAT/autoconf-2.69/build/bin/autoconf failed with exit status: 1

Any idea how to get over it?
Thanks

not able to make KAT-2.0.7

After a whole bunch of warnings, my make stopped with

Making all in tests
make[2]: Entering directory `/home/zxc561/KAT/tests'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/zxc561/KAT/tests'
make[2]: Entering directory `/home/zxc561/KAT'
make[2]: *** No rule to make target `deps/seqan-library-2.0.0.tar.gz', needed by `all-am'.  Stop.
make[2]: Leaving directory `/home/zxc561/KAT'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/zxc561/KAT'
make: *** [all] Error 2

I configured with

./configure --prefix=$PWD --with-boost-libdir=/apps/boost/1.58.0/lib --with-boost=/apps/boost/1.58.0

Was using cmake/2.8.12.1 initially so I thought it was about cmake so I then changed to cmake/3.0.1 and the same problem was still there.

I've added the following packages to my PATH, as well as autoconfig 2.69 and automake/1.15

 1) gnuplot/5.0.1   2) boost/1.58      3) gcc/5.2.0       4) cmake/3.0.1

Building error

Jellyfish that comes with KAT is having problems building. It appears something went wrong with libtool but I am not sure:

./libtool: line 1901: 3: command not found

Downloaded: https://github.com/TGAC/KAT/releases/download/Release-2.0.3/kat-2.0.3.tar.gz

Using versions:

  • OS: RHEL6.6
  • gcc/4.8.2
  • boost-gcc/1.55.0
  • libtool/2.4.6

Make output:

$ make
make  all-recursive
make[1]: Entering directory `/usr/local/src/kat/kat-2.0.3'
Making all in deps/jellyfish-2.2.0
make[2]: Entering directory `/usr/local/src/kat/kat-2.0.3/deps/jellyfish-2.2.0'
make  all-recursive
make[3]: Entering directory `/usr/local/src/kat/kat-2.0.3/deps/jellyfish-2.2.0'
Making all in .
make[4]: Entering directory `/usr/local/src/kat/kat-2.0.3/deps/jellyfish-2.2.0'
  CXX      lib/rectangular_binary_matrix.lo
./libtool: line 1901: 3: command not found
  CXX      lib/mer_dna.lo
./libtool: line 1901: 3: command not found
  CXX      lib/storage.lo
./libtool: line 1901: 3: command not found
  CXX      lib/allocators_mmap.lo
./libtool: line 1901: 3: command not found
  CXX      lib/misc.lo
./libtool: line 1901: 3: command not found
  CXX      lib/int128.lo
./libtool: line 1901: 3: command not found
  CXX      lib/thread_exec.lo
./libtool: line 1901: 3: command not found
  CXX      lib/jsoncpp.lo
./libtool: line 1901: 3: command not found
  CXX      lib/time.lo
./libtool: line 1901: 3: command not found
  CXX      lib/generator_manager.lo
./libtool: line 1901: 3: command not found
  CXXLD    libjellyfish-2.0.la
libtool: link: `lib/rectangular_binary_matrix.lo' is not a valid libtool object
make[4]: *** [libjellyfish-2.0.la] Error 1
make[4]: Leaving directory `/usr/local/src/kat/kat-2.0.3/deps/jellyfish-2.2.0'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/usr/local/src/kat/kat-2.0.3/deps/jellyfish-2.2.0'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/usr/local/src/kat/kat-2.0.3/deps/jellyfish-2.2.0'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/kat/kat-2.0.3'
make: *** [all] Error 2

Configure output:

$ export VERSION=2.0.3
$ ./configure --prefix=/usr/local/kat/$VERSION-gcc --with-boost=$BOOST_DIR
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... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '2504' is supported by ustar format... yes
checking whether GID '2504' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking for style of include used by make... GNU
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking how to run the C++ preprocessor... g++ -E
checking whether we are using the GNU C++ compiler... (cached) yes
checking whether g++ accepts -g... (cached) yes
checking dependency style of g++... (cached) gcc3
checking whether g++ supports C++11 features by default... no
checking whether g++ supports C++11 features with -std=gnu++11... yes
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 whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for ar... ar
checking the archiver (ar) interface... ar
checking for error_at_line... yes
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 whether strerror_r is declared... yes
checking for strerror_r... yes
checking whether strerror_r returns char *... yes
checking for int16_t... yes
checking for int32_t... yes
checking for int64_t... yes
checking for uint8_t... yes
checking for uint16_t... yes
checking for uint32_t... yes
checking for uint64_t... yes
checking for size_t... yes
checking for floor... yes
checking for memset... yes
checking for sqrt... yes
checking for inline... inline
checking for string.h... (cached) yes
checking iostream usability... yes
checking iostream presence... yes
checking for iostream... yes
checking stdio.h usability... yes
checking stdio.h presence... yes
checking for stdio.h... yes
checking fstream usability... yes
checking fstream presence... yes
checking for fstream... yes
checking memory usability... yes
checking memory presence... yes
checking for memory... yes
checking vector usability... yes
checking vector presence... yes
checking for vector... yes
checking glob.h usability... yes
checking glob.h presence... yes
checking for glob.h... yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking if compiler needs -Werror to reject unknown flags... no
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... no
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... no
checking for PTHREAD_PRIO_INHERIT... no
checking for gnuplot... no

checking for boostlib >= 1.52... yes
checking whether the Boost::Filesystem library is available... yes
checking for exit in -lboost_filesystem... yes
checking for /usr/local/boost/1.55.0-gcc//lib/libboost_filesystem.a... yes
checking whether the Boost::System library is available... yes
checking for exit in -lboost_system... yes
checking for /usr/local/boost/1.55.0-gcc//lib/libboost_system.a... yes
checking whether the Boost::Program_Options library is available... yes
checking for exit in -lboost_program_options... yes
checking for /usr/local/boost/1.55.0-gcc//lib/libboost_program_options.a... yes
checking whether the Boost::Chrono library is available... yes
checking for exit in -lboost_chrono... yes
checking for /usr/local/boost/1.55.0-gcc//lib/libboost_chrono.a... yes
checking whether the Boost::Timer library is available... yes
checking for exit in -lboost_timer... yes
checking for /usr/local/boost/1.55.0-gcc//lib/libboost_timer.a... yes
checking whether the Boost::Unit_Test_Framework library is available... yes
checking for exit in -lboost_unit_test_framework... yes
checking for /usr/local/boost/1.55.0-gcc//lib/libboost_unit_test_framework.a... yes
configure: WARNING: cache variable ac_cv_prog_gnuplot_found contains a newline
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating tests/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
=== configuring in deps/jellyfish-2.2.0 (/usr/local/src/kat/kat-2.0.3/deps/jellyfish-2.2.0)
configure: running /bin/sh ./configure --disable-option-checking '--prefix=/usr/local/kat/2.0.3-gcc'  '--with-boost=/usr/local/boost/1.55.0-gcc/' 'LDFLAGS=-L/usr/local/libtool/2.4.6/lib -L/usr/local/boost/1.55.0-gcc/lib -L/usr/local/gcc/4.8.2/lib64 -L/usr/local/gcc/4.8.2/lib -L/usr/local/mpc/1.0.2/lib -L/usr/local/mpfr/3.1.2/lib -L/usr/local/gmp/5.1.3/lib' 'CPPFLAGS=-I/usr/local/libtool/2.4.6/include -I/usr/local/boost/1.55.0-gcc/include -I/usr/local/gcc/4.8.2/include -I/usr/local/mpc/1.0.2/include -I/usr/local/mpfr/3.1.2/include -I/usr/local/gmp/5.1.3/include' --cache-file=/dev/null --srcdir=.
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
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... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking how to print strings... printf
checking for style of include used by make... GNU
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
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 whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1966080
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for mt... no
checking if : is a manifest tool... no
checking how to run the C preprocessor... gcc -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 for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking how to run the C++ preprocessor... g++ -E
checking for ld used by g++... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... no
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking for md5sum... md5sum
checking for yaggo... false
checking for __int128... yes
checking for std::numeric_limits<__int128>... no
checking for _NSGetExecutablePath... no
checking for execinfo.h... yes
checking for ext/stdio_filebuf.h... yes
checking for siginfo_t.si_int... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating tests/compat.sh
config.status: creating jellyfish-2.0.pc
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
configure: WARNING: cache variable ac_cv_prog_gnuplot_found contains a newline

Compiling with a non-standard python3 location

Is there a way to compile with a non-standard python location? I am using environment modules and it finds the python3 binary, but not the include or lib directories (consequently, configure fails as it is unable to find Python.h). I tried adding the variables CPPFLAGS, LIBS and LDFLAGS with no luck. Thanks in advance.

configure error

Hi,

I am trying to install KAT, but end up with the following error after running ./configure:
sh ./configure --with-boost=~/tools/boost_1_55_0/

.....
checking for boostlib >= 1.52... yes
checking whether the Boost::Filesystem library is available... yes
configure: WARNING: Could not find a dynamic version of the library!
configure: error: Could not find any version of the library to link to

Is it a problem with boost or something else?

Thanks!

Don't install jellyfish include / man pages?

make install on kat seems to also install the jellyfish man and include folders.

These cause clashes with existing jellyfish installs.

Is there a way to not use the bundled jellyfish?

auto-detect "-C"

This really is nothing crucial, but I forget to set the flag properly again today, so it would help me coping with my stupidity.. It should be quite easy to parse that information, e.g. jellyfish info HASH contains canonical: yes/no.

kat 1.x vs kat 2.x problem

I package software for homebrew-science, and I am not sure what to do with KAT.

Is kat 2,x a complete replacement for kat?

If not, can you change kat 2.x to use executables like "kat2" so it doesn't conflict?

Update README.md to emphasize that a bundled jellyfish-2.2.0 is included

Hi,
I was surprised that a bundled jellyfish is included in the source tarball. I have jellyfish already installed. Even more surprisingly you say elsewhere it is a "modified" version. I think you should provide a link to the patch with your changes and second, ensure the modified binary is installed under a new name so that it does not overwrite my current, vanilla jellyfish.

Compiling jellyfish fails with GCC 5: error: 'gettimeofday' was not declared in this scope

It would really help to use a preinstalled copy of jellyfish.

Here's a gist of the log files:
https://gist.github.com/sjackman/1e2a90554a8e2248a7a6ef1cf3192b6b#file-02-make-L97

g++-5 -DHAVE_CONFIG_H -I. -I..  -DCPLUSPLUS -I../deps/seqan-library-2.0.0/include -I../deps/jellyfish-2.2.0/include -I../deps/jellyfish-2.2.0/include -I/usr/local/Cellar/boost/1.60.0_1/include  -g -O3 -Wno-conversion-null -Wno-unused-result -Wno-unused-function -Wno-sign-compare -Wnon-virtual-dtor -std=c++11 -DCPLUSPLUS -g -O2 -std=gnu++11 -c -o kat-kat.o `test -f 'kat.cc' || echo './'`kat.cc
In file included from ../deps/jellyfish-2.2.0/include/jellyfish/hash_counter.hpp:23:0,
                 from ./jellyfish_helper.hpp:45,
                 from sect.cc:50:
../deps/jellyfish-2.2.0/include/jellyfish/locks_pthread.hpp: In member function 'int jellyfish::locks::pthread::cond::timedwait(time_t)':
../deps/jellyfish-2.2.0/include/jellyfish/locks_pthread.hpp:59:31: error: 'gettimeofday' was not declared in this scope
     gettimeofday(&timeofday, 0);

Segmentation fault when running KAT

I I compiled with

1) boost/1.58      2) libtool/2.4.6   3) gnuplot/5.0.1   4)  gcc/5.1.0 

and finally manage to install KAT V2.0.8 but still couldn't run it :(
I need to run it on a HPC so I've written a job script and submitted it to the compute nodes.
However, it gave me the error message

~/KAT/KAT-2.0.8/bin/kat comp -C -D --d1_bins 2000 *_L001_R?.fastq 
Kmer Analysis Toolkit (KAT) V2.0.8

Running KAT in COMP mode
------------------------

Segmentation fault

I tried to run it on head node without submitting to compute nodes, it's still the same.

Our HPC runs on SUSE Linux Enterprise Server 11 (x86_64) and PBSPro_11.2.0.113417

make check failed

Hi,

When running tests 4 out of 5 failed. I can still "sudo make install", but failed to run kat with the error message of
"Throw location unknown (consider using BOOST_THROW_EXCEPTION)
Dynamic exception type: boost::exception_detail::clone_implboost::exception_detail::error_info_injector<std::logic_error >
std::exception::what: character conversion failed".

Thanks,
Quan

kat 2.1.1: tests/test-suite.log

TOTAL: 5

PASS: 1

SKIP: 0

XFAIL: 0

FAIL: 4

XPASS: 0

ERROR: 0

.. contents:: :depth: 2

FAIL: test_hist

Kmer Analysis Toolkit (KAT) V2.1.1

kat.cc(93): Throw in function Mode parseMode(std::__cxx11::string)
Dynamic exception type: boost::exception_detail::clone_impl
std::exception::what: std::exception
[KatError*] = Could not recognise mode string:

FAIL: test_gcp

Kmer Analysis Toolkit (KAT) V2.1.1

kat.cc(93): Throw in function Mode parseMode(std::__cxx11::string)
Dynamic exception type: boost::exception_detail::clone_impl
std::exception::what: std::exception
[KatError*] = Could not recognise mode string:

FAIL: test_sect

Kmer Analysis Toolkit (KAT) V2.1.1

kat.cc(93): Throw in function Mode parseMode(std::__cxx11::string)
Dynamic exception type: boost::exception_detail::clone_impl
std::exception::what: std::exception
[KatError*] = Could not recognise mode string:

FAIL: test_comp

Kmer Analysis Toolkit (KAT) V2.1.1

kat.cc(93): Throw in function Mode parseMode(std::__cxx11::string)
Dynamic exception type: boost::exception_detail::clone_impl
std::exception::what: std::exception
[KatError*] = Could not recognise mode string:

Sometimes hash doubling does not work.

Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...
Warning: Specified hash size insufficent - attempting to double hash size...../deps/seqan-library-2.0.0/include/seqan/basic/basic_exception.h:368 FAILED! (Uncaught exception of type std::runtime_error: Hash full../deps/seqan-library-2.0.0/include/seqan/basic/basic_exception.h:368 FAILED! (Uncaught exception of type std::runtime_error: Hash full)
../deps/seqan-library-2.0.0/include/seqan/basic/basic_exception.h:368 FAILED! (Uncaught exception of type std::runtime_error: Hash full)
../deps/seqan-library-2.0.0/include/seqan/basic/basic_exception.h/var/spool/slurmd/job6484335/slurm_script: line 44: 19879 Aborted (core dumped) kat comp -p -t 16 -C -D -o unfiltered141121_BC5DJLANXXread1_vs_read2 $READFWD $READREV

It worked on the two files before, but then crashed on the third. I'm not sure what causes this.

Filter seq cannot use symlink fastq file

Started working on a Galaxy wrapper for filter seq and getting the following error when running the command : filter seq input.fastq -o reads db.jtf

Error: Unknown file extension of /tmp/tmpNs8Ym6/files/000/dataset_1.dat: iostream error

input.fastq is a soft link to /tmp/tmpNs8Ym6/files/000/dataset_1.dat . In Galaxy, all datasets have the same extension of .dat and cannot be changed. Is there a workaround that I am missing?

Compiling jellyfish fails with clang: error: variable length array of non-POD element type 'std::__1::thread'

The workaround is to compile with GCC, but it would be nice to be able to compile with clang. Is it possible to disable compiling jellyfish and instead used the copy of jellyfish that I already have installed, possibly with a --with-jellyfish option?

Here's the failed build log:
https://gist.github.com/sjackman/9515296cd62592ad05c3a637e23e8dc9#file-02-make-L85

clang++ -DHAVE_CONFIG_H -I. -I..  -DCPLUSPLUS -I../deps/seqan-library-2.0.0/include -I../deps/jellyfish-2.2.0/include -I../deps/jellyfish-2.2.0/include -I/usr/local/Cellar/boost/1.60.0_1/include  -g -O3 -Wno-conversion-null -Wno-unused-result -Wno-unused-function -Wno-sign-compare -Wnon-virtual-dtor -std=c++11 -DCPLUSPLUS -g -O2 -std=gnu++11 -c -o kat-plot_spectra_cn.o `test -f 'plot_spectra_cn.cc' || echo './'`plot_spectra_cn.cc
jellyfish_helper.cc:232:13: error: variable length array of non-POD element type 'std::__1::thread'
    thread t[threads];
            ^
1 error generated.
make[1]: *** [kat-jellyfish_helper.o] Error 1

kat 2.0.6 generating invalid Makefile (spaces not tabs)

@bjclavijo
Using the 2.0.6 .tar.gz from the Releases page on Linuxbrew / RHEL 7 produces this error:

% ./configure

% make
Makefile:930: *** missing separator.  Stop.

I decided to run autoreconf -i to check if it was something local, but same problem:

 Makefile:941: *** missing separator.  Stop.

Both sections seem to point to this part:

install-data-hook:
    cd $(DESTDIR)/deps; \
    cat $(SEQAN_ARCHIVE) | gunzip | $(TAR) -H gnu --list > uninstall_manifest.txt; \
    cat $(SEQAN_ARCHIVE) | gunzip | $(TAR) -H gnu --no-same-owner --extract; \
    rm --force $(SEQAN_ARCHIVE); \
    cat uninstall_manifest.txt | sed --expression='s/^\|$$/"/g' | xargs chmod a=rX,u+w

uninstall-local:
    cd $(DESTDIR)/deps; \
    cat uninstall_manifest.txt | sed --expression='s/ /\\ /g' | xargs rm --force; \
    rm --force uninstall_manifest.txt

It appears the commands for these targets are using spaces instead of tabs which is invalid.

If I manually replace those 2 first lines with a tab the Makefile is syntactically correct.

Make --version more standardised

Best to follow the GNU standard to make parsing easier for things like Galaxy etc

OLD:

% kat --version
Kmer Analysis Toolkit (KAT) V2.0.8

NEW:

% kat --version
kat 2.0.8

Segmentation fault when showing options

Compiled on centos 6 with gcc 4.8.2, boost 1.60.0, libtool 2.2.6, python 3.5.1 with matplotlib 1.5.1.

I get this:

Kmer Analysis Toolkit (KAT) V2.1.1

Usage: kat hist [options] (<input>)+

Create an histogram of k-mer occurrences from the input.

Create an histogram with the number of k-mers having a given count, derived from the input, which can take the form of a single jellyfish hash, or one or more FastA or FastQ files. In bucket 'i' are tallied the k-mers which have a count 'c' satisfying 'low+i*inc <= c < low+(i+1)'. Buckets in the output are labeled by the low end point (low+i).
The last bucket in the output behaves as a catchall: it tallies all k-mers with a count greater or equal to the low end point of this bucket.
This tool is very similar to the "histo" tool in jellyfish itself.  The primary difference being that the output contains metadata that make the histogram easier for the user to plot.

Options:
Segmentation fault (core dumped)

It also occurs with previous versions of KAT.

Many thanks

Makefile: spaces instead of tabs

I just tried to make KAT from the latest pull. After

./configure --prefix=$HOME/software/kat --with-boost=$HOME/software/boost;
make

I ran into Makefile:918: *** missing separator. Stop. Looks like you caught some leading spaces in install-data-hook: and uninstall-local: section.

gcp plot as .ps/.pdf

Is it possible to get the kat gcp plot as .ps/.pdf? I tried to use kat plot but failed to load the kat-gcp.mx matrix.

kat-sect-counts.cvg - terminal kmers missing

Hi Dan,

I'm currently working with sects per sequence coverage count files and noticed that each record is 8 counts short at the end. I'm using a 19mer hash, I have not tested, if the number changes with other kmer sizes.

One pass filter seq on multiple fasta file

Our lab is trying to determine which plasmid sequences to filter in or out for more time consuming down stream analyses based on the filter seq command.

If we pass our multiple fasta file with all the sequences, it treats as a single filter target. If we split our fasta file up, we are suddenly running filter seq thousand of times on the same input fastq files. Is it possible to either add another column in --stats that indicate which target it in the multiple fasta file?

Compiler warnings about deprecated "auto_ptr" ?

Is this a BOOST or a KAT problem?

/bio/linuxbrew/opt/boost//include/boost/get_pointer.hpp:27:40: warning: 'template<class> class std::auto_ptr' is deprecated [-Wdeprecated-dec
larations]
 template<class T> T * get_pointer(std::auto_ptr<T> const& p)
                                        ^
In file included from /bio/linuxbrew/Cellar/gcc/5.2.0/include/c++/5.2.0/memory:81:0,
                 from /bio/linuxbrew/opt/boost//include/boost/config/no_tr1/memory.hpp:21,
                 from /bio/linuxbrew/opt/boost//include/boost/smart_ptr/shared_ptr.hpp:23,
                 from /bio/linuxbrew/opt/boost//include/boost/shared_ptr.hpp:17,
                 from /bio/linuxbrew/opt/boost//include/boost/exception/get_error_info.hpp:18,
                 from /bio/linuxbrew/opt/boost//include/boost/exception/diagnostic_information.hpp:16,
                 from /bio/linuxbrew/opt/boost//include/boost/exception/all.hpp:15,
                 from kat.cc:28:
/bio/linuxbrew/Cellar/gcc/5.2.0/include/c++/5.2.0/bits/unique_ptr.h:49:28: note: declared here
   template<typename> class auto_ptr;
                            ^
In file included from /bio/linuxbrew/opt/boost//include/boost/bind/mem_fn.hpp:25:0,
                 from /bio/linuxbrew/opt/boost//include/boost/mem_fn.hpp:22,
                 from /bio/linuxbrew/opt/boost//include/boost/function/detail/prologue.hpp:18,
                 from /bio/linuxbrew/opt/boost//include/boost/function.hpp:24,
                 from /bio/linuxbrew/opt/boost//include/boost/algorithm/string/detail/find_iterator.hpp:18,
                 from /bio/linuxbrew/opt/boost//include/boost/algorithm/string/find_iterator.hpp:24,
                 from /bio/linuxbrew/opt/boost//include/boost/algorithm/string/iter_find.hpp:27,
                 from /bio/linuxbrew/opt/boost//include/boost/algorithm/string/split.hpp:16,
                 from /bio/linuxbrew/opt/boost//include/boost/algorithm/string.hpp:23,
                 from sect.cc:39:
/bio/linuxbrew/opt/boost//include/boost/get_pointer.hpp:27:40: warning: 'template<class> class std::auto_ptr' is deprecated [-Wdeprecated-declarations]
 template<class T> T * get_pointer(std::auto_ptr<T> const& p)
                                        ^
In file included from /bio/linuxbrew/Cellar/gcc/5.2.0/include/c++/5.2.0/memory:81:0,
                 from sect.cc:23:
/bio/linuxbrew/Cellar/gcc/5.2.0/include/c++/5.2.0/bits/unique_ptr.h:49:28: note: declared here
   template<typename> class auto_ptr;
                            ^

Support for .fastq.gz files?

I thought SEQAN supported .gz streams?

% kat hist -t 72 -C -m 31 R1.fastq.gz
Kmer Analysis Toolkit (KAT) V2.0.8

Running KAT in HIST mode
------------------------

Input is a sequence file.  Counting kmers for Sa-R1.fastq.gz ...  Time taken: 0.1s

KAT HIST completed.
Total runtime: 0.1s

Error: Unsupported format

kat-plot_density.o: In function `boost::filesystem::exists(boost::filesystem::path const&)': /usr/include/boost/filesystem/operations.hpp:446: undefined reference to `boost::filesystem::detail::status(boost::filesystem::path const&, boost::system::error_code*)'

Hi,
when trying to compile current git HEAD on my Gentoo Linux box I get:

kat-plot_density.o: In function `boost::filesystem::exists(boost::filesystem::path const&)':
/usr/include/boost/filesystem/operations.hpp:446: undefined reference to `boost::filesystem::detail::status(boost::filesystem::path const&, boost::system::error_code*)'
kat-plot_density.o: In function `boost::filesystem::symlink_status(boost::filesystem::path const&)':
/usr/include/boost/filesystem/operations.hpp:441: undefined reference to `boost::filesystem::detail::symlink_status(boost::filesystem::path const&, boost::system::error_code*)'
kat-plot_density.o: In function `boost::program_options::typed_value<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, char>::xparse(boost::any&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) const':
/usr/include/boost/program_options/detail/value_semantic.hpp:167: undefined reference to `boost::program_options::validate(boost::any&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, int)'
kat-plot_density.o: In function `boost::program_options::validation_error::validation_error(boost::program_options::validation_error::kind_t, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)':
/usr/include/boost/program_options/errors.hpp:373: undefined reference to `boost::program_options::validation_error::get_template[abi:cxx11](boost::program_options::validation_error::kind_t)'
/usr/include/boost/program_options/errors.hpp:373: undefined reference to `boost::program_options::error_with_option_name::error_with_option_name(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)'
kat-plot_density.o: In function `boost::program_options::typed_value<unsigned short, char>::name() const':
/usr/include/boost/program_options/detail/value_semantic.hpp:19: undefined reference to `boost::program_options::arg[abi:cxx11]'
kat-plot_density.o: In function `boost::program_options::typed_value<unsigned long, char>::name() const':
/usr/include/boost/program_options/detail/value_semantic.hpp:19: undefined reference to `boost::program_options::arg[abi:cxx11]'
kat-plot_density.o: In function `boost::program_options::typed_value<unsigned int, char>::name() const':
/usr/include/boost/program_options/detail/value_semantic.hpp:19: undefined reference to `boost::program_options::arg[abi:cxx11]'
kat-plot_density.o: In function `boost::program_options::typed_value<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, char>::name() const':
/usr/include/boost/program_options/detail/value_semantic.hpp:19: undefined reference to `boost::program_options::arg[abi:cxx11]'
kat-plot_density.o: In function `boost::program_options::typed_value<boost::filesystem::path, char>::name() const':
/usr/include/boost/program_options/detail/value_semantic.hpp:19: undefined reference to `boost::program_options::arg[abi:cxx11]'
kat-plot_density.o: In function `boost::program_options::error_with_option_name::~error_with_option_name()':
/usr/include/boost/program_options/errors.hpp:119: undefined reference to `vtable for boost::program_options::error_with_option_name'
kat-plot_density.o: In function `boost::program_options::error_with_option_name::~error_with_option_name()':
/usr/include/boost/program_options/errors.hpp:119: undefined reference to `vtable for boost::program_options::error_with_option_name'
/usr/include/boost/program_options/errors.hpp:119: undefined reference to `vtable for boost::program_options::error_with_option_name'
/usr/include/boost/program_options/errors.hpp:119: undefined reference to `vtable for boost::program_options::error_with_option_name'
/usr/include/boost/program_options/errors.hpp:119: undefined reference to `vtable for boost::program_options::error_with_option_name'
kat-plot_density.o:/usr/include/boost/program_options/errors.hpp:119: more undefined references to `vtable for boost::program_options::error_with_option_name' follow
kat-plot_density.o: In function `std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > boost::program_options::to_internal<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)':
/usr/include/boost/program_options/detail/convert.hpp:79: undefined reference to `boost::program_options::to_internal(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
kat-plot_density.o: In function `boost::program_options::basic_command_line_parser<char>::basic_command_line_parser(int, char const* const*)':
/usr/include/boost/program_options/detail/parsers.hpp:44: undefined reference to `boost::program_options::detail::cmdline::cmdline(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)'
kat-plot_density.o: In function `boost::program_options::basic_command_line_parser<char>::run()':
/usr/include/boost/program_options/detail/parsers.hpp:108: undefined reference to `boost::program_options::detail::cmdline::get_canonical_option_prefix()'
/usr/include/boost/program_options/detail/parsers.hpp:109: undefined reference to `boost::program_options::detail::cmdline::run()'
kat-plot_density.o: In function `boost::program_options::variables_map::~variables_map()':
/usr/include/boost/program_options/variables_map.hpp:146: undefined reference to `vtable for boost::program_options::variables_map'

I am just guessing here but ... it seems the Makefile does not refer to libboost_filesystem.{a,so} files:

$ grep BOOST src/Makefile
BOOST_CHRONO_LIB = -lboost_chrono-mt
BOOST_CHRONO_STATIC_LIB = /usr/lib64/libboost_chrono.a
BOOST_CPPFLAGS = -I/usr/include
BOOST_FILESYSTEM_LIB = -lboost_filesystem-mt
BOOST_FILESYSTEM_STATIC_LIB =
BOOST_LDFLAGS = -L/usr/lib64
BOOST_PROGRAM_OPTIONS_LIB = -lboost_program_options-mt
BOOST_PROGRAM_OPTIONS_STATIC_LIB =
BOOST_STATIC_LIBS = /usr/lib64/libboost_timer.a /usr/lib64/libboost_chrono.a -lrt /usr/lib64/libboost_system.a
BOOST_SYSTEM_LIB = -lboost_system-mt
BOOST_SYSTEM_STATIC_LIB = /usr/lib64/libboost_system.a
BOOST_TIMER_LIB = -lboost_timer-mt
BOOST_TIMER_STATIC_LIB = /usr/lib64/libboost_timer.a
$

Is my boost-1.62 too new?

2.0.7 compiled but fails on make install

I think you are trying ot change to a folder called /deps because $(DESTDIR) is empty ?

make  install-data-hook
make[3]: Entering directory '/home/tseemann/git/KAT'
cd /deps; \
cat deps/seqan-library-2.0.0.tar.gz | gunzip |  -H gnu --list > uninstall_manifest.txt; \
cat deps/seqan-library-2.0.0.tar.gz | gunzip |  -H gnu --no-same-owner --extract; \
rm --force deps/seqan-library-2.0.0.tar.gz; \
cat uninstall_manifest.txt | sed --expression='s/^\|$/"/g' | xargs chmod a=rX,u+w
/bin/sh: line 0: cd: /deps: No such file or directory
/bin/sh: line 1: -H: command not found
/bin/sh: line 2: -H: command not found
chmod: missing operand after ‘a=rX,u+w’
Try 'chmod --help' for more information.
Makefile:941: recipe for target 'install-data-hook' failed
make[3]: *** [install-data-hook] Error 123
make[3]: Leaving directory '/home/tseemann/git/KAT'
Makefile:867: recipe for target 'install-data-am' failed
make[2]: *** [install-data-am] Error 2
make[2]: Leaving directory '/home/tseemann/git/KAT'
Makefile:821: recipe for target 'install-am' failed
make[1]: *** [install-am] Error 2
make[1]: Leaving directory '/home/tseemann/git/KAT'
Makefile:520: recipe for target 'install-recursive' failed
make: *** [install-recursive] Error 1

problems when running KAT in COMP mode

Dear developers,
I'm trying to run KAT COMP using the outputs of jellyfish count and the following error comes up:
Kmer Analysis Toolkit (KAT) V2.1.0

Running KAT in COMP mode

Loading hashes into memory...Loading hashes into memory...Loading hashes into memory... Time taken: Time taken: 0.00.0ss

../deps/seqan-library-2.0.0/include/seqan/basic/basic_exception.h:../deps/seqan-library-2.0.0/include/seqan/basic/basic_exception.h:368 FAILED! (Uncaught exception of type boost::exception_detail::clone_implkat::JellyfishException: std::exception)

I've installed the latest version of KAT and all dependencies. I assume that it is not a memory problem, since jellyfish run well and KAT says that the hashes have been loaded into memory. Any ideas?
Thanks,
Javier

SMall typo in error message

Error: Either --list of --intersection must be given.

I think this should say 'or' rather than 'of'.

This is in kat 2.1.0 beta2 (kat plot spectra-mx)

[kat::FileSystemError*] = Could not find jellyfish executable

I think it should be looking for jellyfishk ?

% kat hist
Kmer Analysis Toolkit (KAT) V2.0.8

inc/kat_fs.hpp(129): Throw in function kat::KatFS::KatFS(const char*)
Dynamic exception type: boost::exception_detail::clone_impl<kat::FileSystemException>
std::exception::what: std::exception
[kat::FileSystemError*] = Could not find jellyfish executable at: /bio/linuxbrew/Cellar/kat/2.0.8/bin/jellyfish

Maybe this code in jellyfish_helper.cc ?

path kat::JellyfishHelper::jellyfishExe = "jellyfish";

But this too?

 string jellyfishCmd =   kat::JellyfishHelper::jellyfishExe.empty() ?
                                "jellyfish" :
                                kat::JellyfishHelper::jellyfishExe.string();

kat-2.1.1/lib: Makefile injects -O3

Although in general my CFLAGS and CXXFLAGS were respect by configure somewhere something injects "-g -O3":

Making all in lib
make[2]: Entering directory '/scratch/var/tmp/portage/sci-biology/kat-2.1.1/work/kat-2.1.1/lib'
/bin/sh ../libtool --tag=CXX --mode=compile x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I.. -isystem ../deps/jellyfish-2.2.0/include -isystem ../lib/include -I/usr/include -g -O3 -fwrapv -Wall -Wextra -Wno-deprecated-declarations -Wno-unused-function -Wno-unused-parameter -Wno-unused-variable -ansi -pedantic -Werror -std=c++11 -DCPLUSPLUS -O2 -pipe -maes -mpclmul -mpopcnt -mavx -march=native -std=gnu++11 -c -o src/libkat_2_1_la-gnuplot_i.lo test -f 'src/gnuplot_i.cc' || echo './'src/gnuplot_i.cc

I could grep through the Makefiles and config.status files but I assume you can easily reproduce this for testing.

configure problem

configure.ac:42: error: possibly undefined macro: AM_PROG_AR
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
autoreconf: /usr/bin/autoconf failed with exit status: 1

Symlink to fasta read in as hash

Hi Dan,

I think the issue here is my file which is a symlink to a symlink of a fasta file is being read in as a jellyfish hash. (I'm not certain is the cause, but it's the most likely I came up with given the error)

Error output:
/pica/v3/b2011228_nobackup/Debaryomyces_automated/04_Validation/P1260_1001/P1260_1001_soapdenovo_67_assembly.fasta exists or is linked correctly
Kmer Analysis Toolkit (KAT) V2.0.6

Running KAT in COMP mode

Input is a sequence file. Counting kmers for Allreads.fastq ... done. Time taken: 15.1s

KAT COMP completed.
Total runtime: 15.2s

input_handler.cc(94): Throw in function void kat::InputHandler::validateMerLen(uint16_t)
Dynamic exception type: boost::exception_detail::clone_implkat::JellyfishException
std::exception::what: std::exception
[kat::JellyfishError*] = Cannot process hashes that were created with different K-mer lengths. Expected: 27. Key length was 0 for : /pica/v3/b2011228_nobackup/Debaryomyces_automated/04_Validation/P1260_1001/P1260_1001_soapdenovo_67_assembly.fasta

Regards,
Mahesh.

Pollution of PATH with "jellyfish" exe

make install adds jellyfish into the same bin folder as kat.

This will cause problems with local jellyfish installs.

Please install it in a libexec folder and tell kat to execute that version or rename it to kat.jellyfish or something similarly unique and non-clashing.

Error reading input files in kat comp

Cloned repo, and compiled as per usual, all tests pass except the swig bindings.

GCC - 4.8.2-19ubuntu1
Boost version- 1.54.0.1ubuntu1
Jellyfish version- 1.1.10

Generated jellyfish hashes fine using the standard commands

jellyfish count -t 64 - m31 -C -s 10000000000 -o q30a1.jf31  q30a1.fq
jellyfish count -t 64 - m31 -C -s 10000000000 -o q30a2.jf31  q30a2.fq

But when I try to run kat comp I'm running into errors to do with reading the inputs in the option parsing (I've tried both abspaths and relpaths as well as removing any possible weird filename characters like multiple periods)

$ kat comp q30a1.jf31_0 q30a2.jf31_0

Kmer Analysis Toolkit (KAT) V2.0.5

Running KAT in COMP mode
------------------------

KAT COMP completed.
Total runtime: 0.0s

input_handler.cc(59): Throw in function void kat::InputHandler::validateInput()
Dynamic exception type: boost::exception_detail::clone_impl<kat::JellyfishException>
std::exception::what: std::exception
[kat::JellyfishError*] = Could not find input file at: ; please check the path and try again.
Kmer Analysis Toolkit (KAT) V2.0.5

Interestingly if I provide a filepath that doesn't exist the error message correctly outputs the filepath instead of leaving it blank.

$ kat comp foo bar

Kmer Analysis Toolkit (KAT) V2.0.5

Running KAT in COMP mode
------------------------

KAT COMP completed.
Total runtime: 0.0s

input_handler.cc(59): Throw in function void kat::InputHandler::validateInput()
Dynamic exception type: boost::exception_detail::clone_impl<kat::JellyfishException>
std::exception::what: std::exception
[kat::JellyfishError*] = Could not find input file at: foo; please check the path and try again.

Any idea what my issue is? Something with bfs::path?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.