我写这篇文章是因为我无法安装一个名为REAPR的sanger软件
这里是我们可以找到它的地方:
https://www.sanger.ac.uk/tool/reapr/
这是我得到的信息:
..。
^~~~~~
/beegfs/data/bguinet/TOOLS/Reapr_1.0.18/third_party/cmake/Utilities/KWIML/test/test_INT_format.h:30:10: error: unable to find string literal operator 'operator""cmIML_INT_PRI' with 'const char [38]', 'long unsigned int' arguments
" expression [%"cmIML_INT_PRI##PRI"]," \
^
/beegfs/data/bguinet/TOOLS/Reapr_1.0.18/third_party/cmake/Utilities/KWIML/test/test_INT_format.h:185:3: note: in expansion of macro 'TEST_C'
TEST_C(UINT64_C, 0xAB00000000000000, u64, uint64_t, uint64_t)
^~~~~~
make[2]: *** [Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/build.make:168: Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test_INT_CXX.cxx.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:987: Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/all] Error 2
make: *** [Makefile:141: all] Error 2有人知道问题出在哪里吗?我能做些什么来解决它?
发布于 2020-10-24 00:15:32
通过将以下补丁应用于third_party/cmake/Utilities/KWIML/test/test_INT_format.h.in,我能够消除第一个错误
30,31c30,31
< " expression [%"@KWIML@_INT_PRI##PRI"]," \
< " literal [%"@KWIML@_INT_PRI##PRI"]", x, y); \
---
> " expression [%" @KWIML@_INT_PRI##PRI "]," \
> " literal [%" @KWIML@_INT_PRI##PRI "]", x, y); \
47c47
< sprintf(buf, "%"@KWIML@_INT_PRI##PRI, x); \
---
> sprintf(buf, "%" @KWIML@_INT_PRI##PRI, x); \
67c67
< if(sscanf(str, "%"@KWIML@_INT_SCN##SCN, &y) != 1) \
---
> if(sscanf(str, "%" @KWIML@_INT_SCN##SCN, &y) != 1) \
72,73c72,73
< " expected [%"@KWIML@_INT_PRI##PRI"]," \
< " got [%"@KWIML@_INT_PRI##PRI"]", x, y); \
---
> " expected [%" @KWIML@_INT_PRI##PRI "]," \
> " got [%" @KWIML@_INT_PRI##PRI "]", x, y); \但是,重新运行install.sh现在会出现另一个错误:
[ 95%] Building CXX object src/toolkit/CMakeFiles/bamtools_cmd.dir/bamtools_resolve.cpp.o
/home/hakon/Reapr_1.0.18/third_party/bamtools/src/toolkit/bamtools_resolve.cpp: In member function ‘bool BamTools::ResolveTool::ReadNamesFileReader::Read(std::map<std::__cxx11::basic_string<char>, ReadGroupResolver>&)’:
/home/hakon/Reapr_1.0.18/third_party/bamtools/src/toolkit/bamtools_resolve.cpp:401:74: error: cannot bind rvalue reference of type ‘std::__cxx11::basic_string<char>&&’ to lvalue of type ‘__gnu_cxx::__alloc_traits<std::allocator<std::__cxx11::basic_string<char> >, std::__cxx11::basic_string<char> >::value_type’ {aka ‘std::__cxx11::basic_string<char>’}
401 | resolver.ReadNames.insert( make_pair<string,bool>(fields[1], true) ) ;
| ^
In file included from /usr/include/c++/9/bits/stl_algobase.h:64,
from /usr/include/c++/9/bits/char_traits.h:39,
from /usr/include/c++/9/string:40,
from /home/hakon/Reapr_1.0.18/third_party/bamtools/src/toolkit/bamtools_tool.h:14,
from /home/hakon/Reapr_1.0.18/third_party/bamtools/src/toolkit/bamtools_resolve.h:13,
from /home/hakon/Reapr_1.0.18/third_party/bamtools/src/toolkit/bamtools_resolve.cpp:10:有关此错误的详细信息,请参阅here
https://stackoverflow.com/questions/64502130
复制相似问题