MuSiC2 icon indicating copy to clipboard operation
MuSiC2 copied to clipboard

Install error

Open a00101 opened this issue 4 years ago • 4 comments

at directory of samtools1.9

export SAMDIR=$PWD

cd ../calcRoiCovg/

make

Please define environment variable SAMDIR to point to your samtools libraries

what should I do that?

Thanks

a00101 avatar Jul 25 '19 12:07 a00101

Hi @a00101 ,

This issue seems to do with different versions of the calcRoiCovg library. If you look closely at calcRoiCovg's Makefile, it will tell you what environment variable you should be setting.

From this version of calcRoiCovg, for example, it is evident that the environment variable for Samtools directory should be called SAMTOOLS_ROOT:

gcc -g -Wall -fopenmp -O2 -I${SAMTOOLS_ROOT} calcRoiCovg.c -o calcRoiCovg -L${SAMTOOLS_ROOT} -lbam -lm -lz -lpthread

Solution: try to export the following; one of them should work (also change the path of course):

SAMDIR=/path/to/samtools SAMTOOLS_ROOT=/path/to/samtools SAMTOOLS_DIR=/path/to/samtools

Best,

Felix

FelixWho avatar Jul 26 '19 15:07 FelixWho

Hi, I got the following error message during joinx install step. I am following the steps given

Using the guide I overcame the fist error with joinx about StreamLineSource.cpp. Please let me know of the following issue.

------------Error message--- In file included from /Software/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:269:3: note: no known conversion for argument 1 from ‘std::basic_istream’ to ‘const testing::AssertionResult&’ In file included from /Software/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:57:0, from /Software/joinx/test/lib/fileformats/TestVcfEntry.cpp:13: /Software/joinx/test/lib/fileformats/TestVcfEntry.cpp: In member function ‘virtual void TestVcfEntry_multipleFiltersWhitelist_Test::TestBody()’: /Software/joinx/build/vendor/src/gtest160/include/gtest/internal/gtest-internal.h:1179:44: error: no matching function for call to ‘testing::AssertionResult::AssertionResult(std::basic_istream&)’ ::testing::AssertionResult(expression))
^ /Software/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:1790:3: note: in expansion of macro ‘GTEST_TEST_BOOLEAN_’ GTEST_TEST_BOOLEAN_(condition, #condition, false, true,
^ /Software/joinx/test/lib/fileformats/TestVcfEntry.cpp:427:5: note: in expansion of macro ‘ASSERT_TRUE’ ASSERT_TRUE(getline(vcfss, line)); ^ In file included from /Software/joinx/test/lib/fileformats/TestVcfEntry.cpp:13:0: /Software/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:271:12: note: candidate: testing::AssertionResult::AssertionResult(bool) explicit AssertionResult(bool success) : success_(success) {} ^ /Software/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:271:12: note: no known conversion for argument 1 from ‘std::basic_istream’ to ‘bool’ /Software/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:269:3: note: candidate: testing::AssertionResult::AssertionResult(const testing::AssertionResult&) AssertionResult(const AssertionResult& other); ^ /Software/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:269:3: note: no known conversion for argument 1 from ‘std::basic_istream’ to ‘const testing::AssertionResult&’ build/test/lib/fileformats/CMakeFiles/TestFileFormats.dir/build.make:326: recipe for target 'build/test/lib/fileformats/CMakeFiles/TestFileFormats.dir/TestVcfEntry.cpp.o' failed make[2]: *** [build/test/lib/fileformats/CMakeFiles/TestFileFormats.dir/TestVcfEntry.cpp.o] Error 1 CMakeFiles/Makefile2:237: recipe for target 'build/test/lib/fileformats/CMakeFiles/TestFileFormats.dir/all' failed make[1]: *** [build/test/lib/fileformats/CMakeFiles/TestFileFormats.dir/all] Error 2 Makefile:160: recipe for target 'all' failed make: *** [all] Error 2

rajkump avatar Oct 16 '19 15:10 rajkump

Hi @rajkump,

As far as I can tell, the issue is that C++ used to allow you to evaluate an istream as bool and now it does not. However, based on this page:

https://stackoverflow.com/questions/41564040/evaluating-stream-operator-as-boolean

It looks like !(istream) still evaluates as a bool (admittedly with reversed values). I therefore got joinx to compile by editing test/lib/fileformats/TestVcfEntry.cpp to replace the two lines that look like

ASSERT_TRUE(getline(vcfss, line));

to instead

ASSERT_FALSE(!(getline(vcfss, line)));

Hope that helps!

jasonptm avatar Nov 06 '19 16:11 jasonptm

Hello @jasonptm

I also had a same error as @rajkump had, and I also changed two lines as you recommended. However, it still returns same error. I am working on Ubuntu 18.10 and only make step of JoinX occurs those errors.

The error message is as below;

In file included from /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:57:0, from /home/audrey/joinx/test/lib/fileformats/TestVcfEntry.cpp:13: /home/audrey/joinx/test/lib/fileformats/TestVcfEntry.cpp: In member function ‘virtual void TestVcfEntry_multipleFilters_Test::TestBody()’: /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/internal/gtest-internal.h:1179:44: error: no matching function for call to ‘testing::AssertionResult::AssertionResult(std::basic_istream&)’ ::testing::AssertionResult(expression))
^ /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:1790:3: note: in expansion of macro ‘GTEST_TEST_BOOLEAN_’ GTEST_TEST_BOOLEAN_(condition, #condition, false, true,
^~~~~~~~~~~~~~~~~~~ /home/audrey/joinx/test/lib/fileformats/TestVcfEntry.cpp:417:5: note: in expansion of macro ‘ASSERT_TRUE’ ASSERT_TRUE(getline(vcfss, line)); ^ In file included from /home/audrey/joinx/test/lib/fileformats/TestVcfEntry.cpp:13:0: /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:271:12: note: candidate: testing::AssertionResult::AssertionResult(bool) explicit AssertionResult(bool success) : success_(success) {} ^~~~~~~~~~~~~~~ /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:271:12: note: no known conversion for argument 1 from ‘std::basic_istream’ to ‘bool’ /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:269:3: note: candidate: testing::AssertionResult::AssertionResult(const testing::AssertionResult&) AssertionResult(const AssertionResult& other); ^~~~~~~~~~~~~~~ /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:269:3: note: no known conversion for argument 1 from ‘std::basic_istream’ to ‘const testing::AssertionResult&’ In file included from /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:57:0, from /home/audrey/joinx/test/lib/fileformats/TestVcfEntry.cpp:13: /home/audrey/joinx/test/lib/fileformats/TestVcfEntry.cpp: In member function ‘virtual void TestVcfEntry_multipleFiltersWhitelist_Test::TestBody()’: /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/internal/gtest-internal.h:1179:44: error: no matching function for call to ‘testing::AssertionResult::AssertionResult(std::basic_istream&)’ ::testing::AssertionResult(expression))
^ /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:1790:3: note: in expansion of macro ‘GTEST_TEST_BOOLEAN_’ GTEST_TEST_BOOLEAN_(condition, #condition, false, true,
^~~~~~~~~~~~~~~~~~~ /home/audrey/joinx/test/lib/fileformats/TestVcfEntry.cpp:427:5: note: in expansion of macro ‘ASSERT_TRUE’ ASSERT_TRUE(getline(vcfss, line)); ^ In file included from /home/audrey/joinx/test/lib/fileformats/TestVcfEntry.cpp:13:0: /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:271:12: note: candidate: testing::AssertionResult::AssertionResult(bool) explicit AssertionResult(bool success) : success_(success) {} ^~~~~~~~~~~~~~~ /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:271:12: note: no known conversion for argument 1 from ‘std::basic_istream’ to ‘bool’ /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:269:3: note: candidate: testing::AssertionResult::AssertionResult(const testing::AssertionResult&) AssertionResult(const AssertionResult& other); ^~~~~~~~~~~~~~~ /home/audrey/joinx/build/vendor/src/gtest160/include/gtest/gtest.h:269:3: note: no known conversion for argument 1 from ‘std::basic_istream’ to ‘const testing::AssertionResult&’ build/test/lib/fileformats/CMakeFiles/TestFileFormats.dir/build.make:326: recipe for target 'build/test/lib/fileformats/CMakeFiles/TestFileFormats.dir/TestVcfEntry.cpp.o' failed make[2]: *** [build/test/lib/fileformats/CMakeFiles/TestFileFormats.dir/TestVcfEntry.cpp.o] Error 1 CMakeFiles/Makefile2:351: recipe for target 'build/test/lib/fileformats/CMakeFiles/TestFileFormats.dir/all' failed make[1]: *** [build/test/lib/fileformats/CMakeFiles/TestFileFormats.dir/all] Error 2 Makefile:162: recipe for target 'all' failed make: *** [all] Error 2

yurasong avatar Aug 26 '20 08:08 yurasong