Giter Site home page Giter Site logo

make check failed about kat HOT 15 CLOSED

tgac avatar tgac commented on August 12, 2024
make check failed

from kat.

Comments (15)

maplesond avatar maplesond commented on August 12, 2024

Hi Quan,

Thanks for bringing this to my attention. I've seen this before when trying to install KAT via linuxbrew, however, when installing directly on my own linux platforms directly, or with brew on MacOS, I haven't been able to replicate the bug. There must be something specific about your environment or boost configuration that KAT doesn't like. Can you give me some more details please: OS, compiler used, boost version and configuration.

Best,
Dan

from kat.

danshu avatar danshu commented on August 12, 2024

Hi Dan,

Here are the details:
OS: Ubuntu 15.10

Compiler:
configure:2866: checking for g++
configure:2882: found /usr/bin/g++
configure:2893: result: g++
configure:2920: checking for C++ compiler version
configure:2929: g++ --version >&5
g++ (Ubuntu 5.2.1-22ubuntu2) 5.2.1 20151010

boost: boost_1_59_0

configuration: ./configure
Part of config.log:
Thread model: posix
gcc version 5.2.1 20151010 (Ubuntu 5.2.1-22ubuntu2)
configure:2940: $? = 0
configure:2929: g++ -V >&5
# g++: error: unrecognized command line option '-V'
g++: fatal error: no input files
compilation terminated.

configure:2940: $? = 1
configure:2929: g++ -qversion >&5
g++: error: unrecognized command line option '-qversion'
g++: fatal error: no input files
compilation terminated.

configure:2940: $? = 1
configure:2960: checking whether the C++ compiler works
configure:2982: g++ conftest.cpp >&5
configure:2986: $? = 0
configure:3034: result: yes
configure:3037: checking for C++ compiler default output file name
...
configure:3251: g++ -c -g conftest.cpp >&5
configure:3251: $? = 0
configure:3292: result: yes
configure:3320: checking how to run the C++ preprocessor
configure:3347: g++ -E conftest.cpp
configure:3347: $? = 0
configure:3361: g++ -E conftest.cpp
conftest.cpp:9:28: fatal error: ac_nonexistent.h: No such file or directory
compilation terminated.
configure:3361: $? = 1
configure: failed program was:

| /* confdefs.h /
| #define PACKAGE_NAME "kat"
| #define PACKAGE_TARNAME "kat"
| #define PACKAGE_VERSION "2.1.1"
| #define PACKAGE_STRING "kat 2.1.1"
| #define PACKAGE_BUGREPORT "https://github.com/TGAC/KAT/issues"
| #define PACKAGE_URL "https://github.com/TGAC/KAT"
| /
end confdefs.h. _/
| #include <ac_nonexistent.h>
configure:3386: result: g++ -E
configure:3406: g++ -E conftest.cpp
configure:3406: $? = 0
configure:3420: g++ -E conftest.cpp
_conftest.cpp:9:28: fatal error: ac_nonexistent.h: No such file or directory
compilation terminated.
configure:3420: $? = 1
configure: failed program was:
*
| /* confdefs.h /
| #define PACKAGE_NAME "kat"
| #define PACKAGE_TARNAME "kat"
| #define PACKAGE_VERSION "2.1.1"
| #define PACKAGE_STRING "kat 2.1.1"
| #define PACKAGE_BUGREPORT "https://github.com/TGAC/KAT/issues"
| #define PACKAGE_URL "https://github.com/TGAC/KAT"
| /
end confdefs.h. _/
...
configure:3580: $? = 1
configure:3584: checking whether we are using the GNU C++ compiler
configure:3612: result: yes
configure:3621: checking whether g++ accepts -g
configure:3682: result: yes
configure:3719: checking for a BSD-compatible install
configure:3787: result: /usr/bin/install -c
configure:3808: checking whether g++ supports C++11 features by default
configure:3842: g++ -c -g -O2 conftest.cpp >&5
_conftest.cpp:13:21: error: expected identifier before 'sizeof'
static_assert(sizeof(int) <= sizeof(T), "not big enough");
^
conftest.cpp:13:21: error: expected ',' or '...' before 'sizeof'
conftest.cpp:13:63: error: ISO C++ forbids declaration of 'static_assert' with no type [-fpermissive]
static_assert(sizeof(int) <= sizeof(T), "not big enough");
^
conftest.cpp:20:20: warning: override controls (override/final) only available with -std=c++11 or -std=gnu++11
virtual void f() override {}
^
conftest.cpp:23:29: error: '>>' should be '> >' within a nested template argument list
typedef check<check> right_angle_brackets;
^
conftest.cpp:26:13: error: expected constructor, destructor, or type conversion before '(' token
decltype(a) b;
^
conftest.cpp:30:15: error: expected unqualified-id before '&&' token
check_type&& cr = static_cast<check_type&&>(c);
^
conftest.cpp:32:10: error: 'd' does not name a type
auto d = a;
^
conftest.cpp:33:10: error: 'l' does not name a type
auto l = {};
^
configure:3842: $? = 1
configure: failed program was:
*
| /* confdefs.h /
| #define PACKAGE_NAME "kat"
| #define PACKAGE_TARNAME "kat"
| #define PACKAGE_VERSION "2.1.1"
| #define PACKAGE_STRING "kat 2.1.1"
| #define PACKAGE_BUGREPORT "https://github.com/TGAC/KAT/issues"
| #define PACKAGE_URL "https://github.com/TGAC/KAT"
| /
end confdefs.h. */
...

Thanks,
Quan

from kat.

maplesond avatar maplesond commented on August 12, 2024

Hi Quan,

So it looks like your OS and compiler are fine. I'm running mint, which is just a slightly tweaked ubuntu and I've tested on gcc-5.2.0. I've also previously tested with that version of boost, although I'm currently running 1.60.0.

I wouldn't worry about the top part of the config.log. Basically, the configuration script tests a lot of potential configurations of your system. If it doesn't detect a configuration in the list it outputs scary warning/error messages in the config.log but as far as I can tell, this is just how the autotools generated configuration scripts work. The important thing is that the configuration completes correctly.

Can you submit the stdout when you run the configure script? If you got as far as compiling the code then I assume this completed successfully but it would be interesting to see what dependencies were registered and if that might help diagnose the initial problem.

Best,
Dan

from kat.

danshu avatar danshu commented on August 12, 2024

Hi Dan,

Here is the stdout:
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 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 for a BSD-compatible install... /usr/bin/install -c
checking whether g++ supports C++11 features by default... no
checking whether g++ supports C++11 features with -std=gnu++11... yes
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 for style of include used by make... GNU
checking whether make supports nested variables... yes
checking whether UID '1002' is supported by ustar format... yes
checking whether GID '1002' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking dependency style of g++... gcc3
checking whether make supports nested variables... (cached) 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 build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking how to print strings... printf
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... 1572864
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 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... mt
checking if mt 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... yes
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 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... yes
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 error_at_line... 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 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... yes
checking for library containing clock_gettime... none required
checking for python... /usr/local/bin/python
checking for python version... 2.7
checking for python platform... linux2
checking for python script directory... ${prefix}/lib/python2.7/site-packages
checking for python extension module directory... ${exec_prefix}/lib/python2.7/site-packages
checking for python2.7... (cached) /usr/local/bin/python
checking for a version of Python >= '2.1.0'... yes
checking for a version of Python >= '3.1'... no
configure: WARNING: this package requires Python >= '3.1'.
If you have it installed, but it isn't the default Python
interpreter in your system path, please pass the PYTHON_VERSION
variable to configure. See ``configure --help'' for reference.

checking for the distutils Python package... yes
checking for Python include path... -I/usr/local/include/python2.7
checking for Python library path... -L/usr/local/lib -lpython2.7
checking for Python site-packages path... /usr/local/lib/python2.7/site-packages
checking python extra libraries... -lpthread -ldl -lutil -lm
checking python extra linking flags... -Xlinker -export-dynamic
checking consistency of all components of python development environment... yes
checking for gnuplot... yes
checking for sphinx-build... yes
configure: WARNING: Sphinx detected, but version is too old. Wont create documentation. You can still find the documentation online at: https://kat.readthedocs.org/en/latest/
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/lib/x86_64-linux-gnu/libboost_filesystem.a... yes
checking whether the Boost::System library is available... yes
checking for exit in -lboost_system... yes
checking for /usr/lib/x86_64-linux-gnu/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/lib/x86_64-linux-gnu/libboost_program_options.a... yes
checking whether the Boost::Chrono library is available... yes
checking for exit in -lboost_chrono... yes
checking for /usr/lib/x86_64-linux-gnu/libboost_chrono.a... yes
checking whether the Boost::Timer library is available... yes
checking for exit in -lboost_timer... yes
checking for /usr/lib/x86_64-linux-gnu/libboost_timer.a... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating doc/source/conf.py
config.status: creating lib/kat-2.1.pc
config.status: creating lib/Makefile
config.status: creating src/Makefile
config.status: creating tests/Makefile
config.status: creating tests/compat.sh
config.status: creating deps/seqan-library-2.0.0/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
=== configuring in deps/jellyfish-2.2.0 (/tools/qc_and_trimming/kat-2.1.1/deps/jellyfish-2.2.0)
configure: running /bin/bash ./configure --disable-option-checking '--prefix=/usr/local' --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... 1572864
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... mt
checking if mt 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... yes
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... yes
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 kat_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: Python3, or some required python modules where not found. Python via matplotlib is the preferred plotting method in KAT. If you want to use python plotting (the preferred option) then we suggest you install anaconda3 (or python3 with numpy, scipy and matplotlib separately). However, gnuplot was detected so KAT plots will be generated via gnuplot instead.
configure: WARNING: Sphinx not detected, or version is too old. Wont create documentation. You can still find the documentation online at: https://kat.readthedocs.org/en/latest/

Best,
Quan

from kat.

maplesond avatar maplesond commented on August 12, 2024

Ok, so there's the obvious warning about python3. I'd recommend you install this via anaconda3 as it will have everything you need and allow KAT to create much nicer plots. However, this should be unrelated to the problem you are having. Unfortunatley, I don't have a quick answer to this, I'll need to look into this properly and get back to you.

Best,
Dan

from kat.

maplesond avatar maplesond commented on August 12, 2024

So I think I've tracked this down to the boost program_options library where it tries to parse the command line options in the initial kat.cc file: line 162. I suspect there is some configuration issue with the boost libraries which is preventing it from working correctly. The size of my working kat executable is 18M, whereas if I try to install with linuxbrew using the linuxbrew boost libraries rather than my own the executable size is 14M, and this shows the same initial error that you posted. Can you try creating a new boost installation and ensure kat links specifically to that version using the "--with-boost=" option for the configuration script?

from kat.

danshu avatar danshu commented on August 12, 2024

When I configure using the "--with-boost=" option, the error message is "configure: WARNING: Could not find a dynamic version of the library!
configure: error: Could not find any version of the library to link to".
There are two versions of boost installed, boost_1_55_0 and boost_1_59_0.
I can find boost directories in /usr/include/boost and /usr/local/include/boost.

Best,
Quan

from kat.

maplesond avatar maplesond commented on August 12, 2024

Hi Quan,

This should work (see #58). Can you try pointing --with-boost to your custom boost directory rather than the system installation locations? See .travis/install.sh and the .travis file in the KAT project dir for an example.

from kat.

danshu avatar danshu commented on August 12, 2024

Hi Dan,

When I configure with "./configure --with-boost=/path/to/boost_1_59_0", I still get the following error message:
WARNING: Could not find a dynamic version of the library!
configure: error: Could not find any version of the library to link to

Best,
Quan

from kat.

maplesond avatar maplesond commented on August 12, 2024

Hi Quan,

Sorry for not making this clearer to start with. When you build boost there should a directory created that contains both "include" and "lib" subdirectories. This is the directory you need to point the --with-boostoption to. On my linux mint machine this directory is called build, so I run this configuration command for KAT: ./configure --with-boost=/home/maplesod/software/boost_1_55_0/build

Best,
Dan

from kat.

danshu avatar danshu commented on August 12, 2024

Hi Dan,

I found that I don't have the "build" directory under /path/to/boost_1_59_0 and it also doesn't contain both "include" and "lib" subdirectories. Is this the problem? I will reinstall boost and then try again.

Best,
Quan

from kat.

maplesond avatar maplesond commented on August 12, 2024

Yes, that would be a problem. Just to give a bit more background... KAT needs to statically link to the boost libraries to function correctly. Boost is a bunch of C++ libraries that generally make life easier as a C++ programmer. If KAT has statically linked to boost correctly boost is built into the KAT executable so you don't need boost again after that.

So there are three ways to install boost (that I know of):

  1. The easiest method is to type: sudo apt-get install libboost-all-dev at the command line. Then you don't have to use the --with-boost option in the KAT configuration script. KAT will just find boost automatically on the system. However, in #58 it seemed like this version didn't work correctly on that users Ubuntu system (I tested this morning and it works fine for me).
  2. The second approach is what we've been discussing here, which involves downloading the source code, then locally building boost (following the boost compilation instructions) and then pointing KAT to that build location (this also works for me).
  3. Install KAT (and boost) via brew, however I have the same issues as you when I do this, so it seems as though KAT does not link to boost correct on my linux mint system, although it works fine on Mac.

from kat.

danshu avatar danshu commented on August 12, 2024

Hi Dan,

I reinstalled boost with "./b2 install --prefix=/path/to/boost_1_59_0" and then I can install kat with "--with-boost=/path/to/boost_1_59_0".

Thanks,
Quan

from kat.

maplesond avatar maplesond commented on August 12, 2024

Great news. I'll close the case now but I'll try and detect and fix the original problem you had in the background.

Best,
Dan

from kat.

jdmontenegro avatar jdmontenegro commented on August 12, 2024

Hello guys,
I have been trying to compile KAT from source but I am running int the same issues when trying to make check. I have tried creating a local_build of boost 1.69 and feeding that version to the configure script of KAT, but the tests still fail. Please find attached the test-suite.log
test-suite.log
Unfortunately I cannot get it to work properly. Do you have any suggestions?
Regards,

Juan D. Montenegro

from kat.

Related Issues (20)

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.