Closed mvolar closed 2 years ago
Hi mvolar,
I'm not able to replicate your build error. Can you confirm that you are using the version currently in the main branch and building with cmake .
followed by make
?
Hello, thanks for the fast response,
here is the wsl2 terminal output:
(base) marin@mashine:/mnt/d/assembly_analysis/ULTRA$ cmake .
and the output is:
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Configuring done
-- Generating done
-- Build files have been written to: /mnt/d/assembly_analysis/ULTRA
Afterwards we run:
(base) marin@mashine:/mnt/d/assembly_analysis/ULTRA$ make
and the output is:
[ 6%] Building CXX object CMakeFiles/ultra.dir/lib/json11.cpp.o
[ 12%] Building CXX object CMakeFiles/ultra.dir/src/FASTAReader.cpp.o
[ 18%] Building CXX object CMakeFiles/ultra.dir/src/FileReader.cpp.o
[ 25%] Building CXX object CMakeFiles/ultra.dir/src/SequenceWindow.cpp.o
[ 31%] Building CXX object CMakeFiles/ultra.dir/src/Symbol.cpp.o
[ 37%] Building CXX object CMakeFiles/ultra.dir/src/main.cpp.o
[ 43%] Building CXX object CMakeFiles/ultra.dir/src/repeat.cpp.o
In file included from /mnt/d/assembly_analysis/ULTRA/src/repeat.cpp:6:0:
/mnt/d/assembly_analysis/ULTRA/src/repeat.hpp:63:8: error: ‘vector’ in namespace ‘std’ does not name a template type
std::vector<int> *splits;
^~~~~~
When inspecting the repeat.hpp in the local version (and the github version in src/) the only declared libraries are:
#ifndef repeat_hpp
#define repeat_hpp
#include <stdio.h>
#include <string>
#include "SequenceWindow.hpp"
#include "Symbol.hpp"
#include "umatrix.hpp"
and once I added
#include <vector>
in repeat.hpp the make command finishes without a problem, and the code executes on both test data and my local data. I don't know specifically what the problem is, could be a quirk of the compiler in WSL2 or something similar.
Adding #include <vector>
to repeat.hpp. It'll take a few days for those changes to make their way to main - thanks for catching this!
When running make in current version (on WSL2) the following error props up:
repeat.hpp:63:8: error: ‘vector’ in namespace ‘std’ does not name a template type
The fix is to add
#include <vector>
in repeat.hpp in the source.