cmagnabosco / ea-utils

Automatically exported from code.google.com/p/ea-utils
0 stars 0 forks source link

fastq-stats make error: google/sparse_hash_map: No such file or directory #10

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What is the expected output? What do you see instead?
CC=g++ PREFIX=/custom/path/ make install
g++ -O3 fastq-lib.cpp -o fastq-mcf fastq-mcf.c
g++ -O3 fastq-lib.cpp -o fastq-multx fastq-multx.c
g++ -O3 fastq-lib.cpp -o fastq-join fastq-join.c
g++ -O3 fastq-lib.cpp -o fastq-stats fastq-stats.cpp
fastq-stats.cpp:34:77: error: google/sparse_hash_map: No such file or directory
fastq-stats.cpp:99: error: expected unqualified-id before ‘<’ token
fastq-stats.cpp:99: error: expected ‘)’ before ‘<’ token
fastq-stats.cpp:99: error: expected initializer before ‘<’ token
fastq-stats.cpp:105: error: ‘google’ has not been declared
fastq-stats.cpp:105: error: expected constructor, destructor, or type 
conversion before ‘<’ token
fastq-stats.cpp:107: error: expected constructor, destructor, or type 
conversion before ‘<’ token
fastq-stats.cpp:118: error: expected constructor, destructor, or type 
conversion before ‘<’ token
fastq-stats.cpp: In function ‘int main(int, char**)’:
fastq-stats.cpp:170: error: ‘vector’ was not declared in this scope
fastq-stats.cpp:170: error: expected primary-expression before ‘>’ token
fastq-stats.cpp:170: error: ‘qcStats’ was not declared in this scope
fastq-stats.cpp:171: error: expected primary-expression before ‘>’ token
fastq-stats.cpp:171: error: ‘qcStats_by_qual’ was not declared in this scope
fastq-stats.cpp:179: error: ‘dups’ was not declared in this scope
fastq-stats.cpp:205: error: ‘vlen’ was not declared in this scope
fastq-stats.cpp:207: error: ‘vlen’ was not declared in this scope
fastq-stats.cpp:277: error: ‘google’ has not been declared
fastq-stats.cpp:277: error: expected primary-expression before ‘,’ token
fastq-stats.cpp:277: error: expected primary-expression before ‘int’
fastq-stats.cpp:277: error: expected ‘;’ before ‘int’
fastq-stats.cpp:278: error: ‘it’ was not declared in this scope
fastq-stats.cpp:293: error: ‘vector’ is not a member of ‘std’
fastq-stats.cpp:293: error: expected primary-expression before ‘>’ token
fastq-stats.cpp:293: error: ‘dup_sort’ was not declared in this scope
fastq-stats.cpp:294: error: ‘google’ has not been declared
fastq-stats.cpp:294: error: expected primary-expression before ‘,’ token
fastq-stats.cpp:294: error: expected primary-expression before ‘int’
fastq-stats.cpp:294: error: expected ‘;’ before ‘int’
fastq-stats.cpp:295: error: ‘it’ was not declared in this scope
fastq-stats.cpp:307: error: ‘sort’ is not a member of ‘std’
fastq-stats.cpp:439: error: ‘vlen’ was not declared in this scope
fastq-stats.cpp: At global scope:
fastq-stats.cpp:521: error: expected unqualified-id before ‘<’ token
fastq-stats.cpp:521: error: expected ‘)’ before ‘<’ token
fastq-stats.cpp:521: error: expected initializer before ‘<’ token
make: *** [fastq-stats] Error 1

What version of the product are you using? On what operating system?
ea-utils.1.1.2-358

Thanks for any help! :)

Original issue reported on code.google.com by gal...@gmail.com on 9 Jul 2012 at 2:39

GoogleCodeExporter commented 9 years ago
You need to install the google sparse hash library 

http://code.google.com/p/sparsehash/

I'll ship it with future releases... it's small.

Original comment by earone...@gmail.com on 9 Jul 2012 at 1:42

GoogleCodeExporter commented 9 years ago
Let me know if this works for you.

Original comment by earone...@gmail.com on 9 Jul 2012 at 1:42

GoogleCodeExporter commented 9 years ago
Hi,
I wanted to know that I installed the google sparse hash library ,LOCALLY on 
server  ./configure --prefix=/home/figo/local
But how i can configure the ea-utils.1.1.2, since it doesn't contain the 
.configure file, so how I can configure the ea-utils make file to go to my 
local installation directory to look for the google sparse has library.(I 
really don't know do i need to change some thing in the make file for this)

Original comment by vikaskum...@gmail.com on 24 Jul 2012 at 8:53

GoogleCodeExporter commented 9 years ago
You can soft link google->directory where it's installed (that's how i like to 
do things)

or you can specify an include path for g++

Original comment by earone...@gmail.com on 25 Jul 2012 at 6:01

GoogleCodeExporter commented 9 years ago
Thanks for the tools. 

I have the same error while installing. Simply set the include path in you 
~/.bashrc like this:

export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:$HOME/include
export C_INCLUDE_PATH=$C_INCLUDE_PATH:$HOME/include

this can solve the problem. 

Original comment by xianjun....@gmail.com on 27 Jul 2012 at 7:22

GoogleCodeExporter commented 9 years ago
Soft linking to the compiled sparsehash and editing Makefile fixed the problem 
for me...
Hope this helps..

Inside the extracted directory...

.
.

sparsehash -> sparsehash-2.0.2

.
.

diff for changed and original Makefile
>>>>>>>>>>>>>>>>>>>>

43c43
<   $(CC) $(CFLAGS) -I./sparsehash/include fastq-lib.cpp -o $@ $<
---
>   $(CC) $(CFLAGS) fastq-lib.cpp -o $@ $<
46c46
<   $(CC) $(CFLAGS) -I./sparsehash/include fastq-lib.cpp -o $@ $<
---
>   $(CC) $(CFLAGS) fastq-lib.cpp -o $@ $<
50c50
<   $(CC) $(CFLAGS) -I./sparsehash/include fastq-lib.cpp -lbamtools -o $@ $<
---
>   $(CC) $(CFLAGS) -I. fastq-lib.cpp -lbamtools -o $@ $<

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Original comment by K.Kranti...@gmail.com on 13 Aug 2012 at 4:42

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Hi all, I seem to having a similar issue on install, output:

g++ -O3 -I. fastq-lib.cpp -o fastq-mcf fastq-mcf.c
g++ -O3 -I. fastq-lib.cpp -o fastq-multx fastq-multx.c
fastq-multx.c: In function ‘int main(int, char**)’:
fastq-multx.c:275:29: warning: ignoring return value of ‘__ssize_t 
getline(char**, size_t*, FILE*)’, declared with attribute warn_unused_result 
[-Wunused-result]
fastq-multx.c:276:29: warning: ignoring return value of ‘__ssize_t 
getline(char**, size_t*, FILE*)’, declared with attribute warn_unused_result 
[-Wunused-result]
fastq-multx.c:493:25: warning: ignoring return value of ‘__ssize_t 
getline(char**, size_t*, FILE*)’, declared with attribute warn_unused_result 
[-Wunused-result]
fastq-multx.c:494:25: warning: ignoring return value of ‘__ssize_t 
getline(char**, size_t*, FILE*)’, declared with attribute warn_unused_result 
[-Wunused-result]
fastq-multx.c:531:25: warning: ignoring return value of ‘__ssize_t 
getline(char**, size_t*, FILE*)’, declared with attribute warn_unused_result 
[-Wunused-result]
g++ -O3 -I. fastq-lib.cpp -o fastq-join fastq-join.c
g++ -O3 -I. fastq-lib.cpp -o fastq-stats fastq-stats.cpp
In file included from fastq-stats.cpp:34:0:
./google/sparse_hash_map:34:38: fatal error: sparsehash/sparse_hash_map: No 
such file or directory
compilation terminated.

Seems strange because, despite the last line, the sparse_hash_map seems to be 
there! So I'm assuming the sparsehash pack is now included in the newest 
release, as promised (?)
This is on Ubuntu 12.04.

Original comment by rkurt...@gmail.com on 19 Sep 2012 at 3:57

GoogleCodeExporter commented 9 years ago
So you essentially added "-I./sparsehash/include"  ... ?  (I'm also running 
12.04 LTS)

I uploaded this version

ea-utils.1.1.2-469.tar.gz

It should have everything needed to compile.

Original comment by earone...@gmail.com on 19 Sep 2012 at 4:24

GoogleCodeExporter commented 9 years ago
Thanks for adding the new version and your quick reply. However, I'm still 
getting this error from running make:

g++ -O3 -I.  fastq-lib.cpp -o fastq-mcf fastq-mcf.c
g++ -O3 -I.  fastq-lib.cpp -o fastq-multx fastq-multx.c
fastq-multx.c: In function ‘int main(int, char**)’:
fastq-multx.c:275:29: warning: ignoring return value of ‘__ssize_t 
getline(char**, size_t*, FILE*)’, declared with attribute warn_unused_result 
[-Wunused-result]
fastq-multx.c:276:29: warning: ignoring return value of ‘__ssize_t 
getline(char**, size_t*, FILE*)’, declared with attribute warn_unused_result 
[-Wunused-result]
fastq-multx.c:493:25: warning: ignoring return value of ‘__ssize_t 
getline(char**, size_t*, FILE*)’, declared with attribute warn_unused_result 
[-Wunused-result]
fastq-multx.c:494:25: warning: ignoring return value of ‘__ssize_t 
getline(char**, size_t*, FILE*)’, declared with attribute warn_unused_result 
[-Wunused-result]
fastq-multx.c:531:25: warning: ignoring return value of ‘__ssize_t 
getline(char**, size_t*, FILE*)’, declared with attribute warn_unused_result 
[-Wunused-result]
g++ -O3 -I.  fastq-lib.cpp -o fastq-join fastq-join.c
g++ -O3 -I.  fastq-lib.cpp -o fastq-stats fastq-stats.cpp
g++ -O3 -I.  fastq-lib.cpp -o fastq-clipper fastq-clipper.c
g++ -O3 -I.  fastq-lib.cpp -lbamtools -o sam-stats sam-stats.cpp
sam-stats.cpp:40:27: fatal error: api/BamReader.h: No such file or directory
compilation terminated.
make: *** [sam-stats] Error 1

Original comment by rkurt...@gmail.com on 19 Sep 2012 at 4:37

GoogleCodeExporter commented 9 years ago
Generally, that's not really an issue... unless you want to build sam-stats.

If you do, please install this first:

https://github.com/pezmaster31/bamtools/wiki/Building-and-installing

I should probably detect to see if it's installed and make it conditional ... 
ie just warn you that bamtools isn't installed.

I think bundling all of bamtools would be a bit much, but maybe not.

Original comment by earone...@gmail.com on 19 Sep 2012 at 4:41

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
I thin all the tools have built (fastq-join, etc. should be in the directory).  
 To avoid errors, you can either a) remove the reference to sam-stats in the 
BIN variable or b) install bamtools.

Original comment by earone...@gmail.com on 19 Sep 2012 at 5:43

GoogleCodeExporter commented 9 years ago
Thanks for the comment. Brain fart: I was removing the directory without 
checking to make sure the tools where installed correctly. They were, so I 
removed comment 12.

Original comment by rkurt...@gmail.com on 19 Sep 2012 at 10:12

GoogleCodeExporter commented 9 years ago
i'm going to ditch bamtools in the next release, which will aso include a lot 
of rna-seq specific stuff, and support for walking through bwa's 
mutltiple-alignment XA tags

closing this issue as "resolved" for now

Original comment by earone...@gmail.com on 20 Sep 2012 at 6:13