kundajelab / phantompeakqualtools

This package computes informative enrichment and quality measures for ChIP-seq/DNase-seq/FAIRE-seq/MNase-seq data. It can also be used to obtain robust estimates of the predominant fragment length or characteristic tag shift values in these assays.
BSD 3-Clause "New" or "Revised" License
55 stars 17 forks source link

install.packages("./spp_1.14.tar.gz") Error #17

Closed mcsimenc closed 4 years ago

mcsimenc commented 4 years ago

Hello, While installing the spp_1.14.tar.gz package with R 3.6.1 on CentOS 7, compilation of bed2vector.cpp fails. Here is the R output:

> install.packages("./spp_1.14.tar.gz")
inferring 'repos = NULL' from 'pkgs'
Warning in untar2(tarfile, files, list, exdir, restore_times) :
  skipping pax global extended headers
* installing *source* package ‘spp’ ...
** using staged installation
checking for gcc... /home/msimenc/software/anaconda3/envs/R/bin/x86_64-conda_cos6-linux-gnu-cc
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 /home/msimenc/software/anaconda3/envs/R/bin/x86_64-conda_cos6-linux-gnu-cc accepts -g... yes
checking for /home/msimenc/software/anaconda3/envs/R/bin/x86_64-conda_cos6-linux-gnu-cc option to accept ISO C89... none needed
checking for BZ2_bzDecompressInit in -lbz2... yes
checking whether we are using the GNU C++ compiler... yes
checking whether /home/msimenc/software/anaconda3/envs/R/bin/x86_64-conda_cos6-linux-gnu-c++ accepts -g... yes
checking for grep that handles long lines and -e... /usr/bin/grep
checking how to run the C++ preprocessor... /home/msimenc/software/anaconda3/envs/R/bin/x86_64-conda_cos6-linux-gnu-c++ -E
checking for a sed that does not truncate output... /home/msimenc/software/anaconda3/envs/R/bin/sed
checking for Boost headers version >= 1.41.0... /usr/include
checking for Boost's header version... 1_53
configure: creating ./config.status
config.status: creating src/Makevars
** libs
x86_64-conda_cos6-linux-gnu-c++ -std=gnu++11 -I"/home/msimenc/software/anaconda3/envs/R/lib/R/include" -DNDEBUG   -DNDEBUG -D_FORTIFY_SOURCE=2 -O2 -isystem /home/msimenc/software/anaconda3/envs/R/include -I/home/msimenc/software/anaconda3/envs/R/include -Wl,-rpath-link,/home/msimenc/software/anaconda3/envs/R/lib -I./ -D_FASTMAP -DMAQ_LONGREADS  -I/usr/include -fpic  -fvisibility-inlines-hidden  -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /home/msimenc/software/anaconda3/envs/R/include -fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/r-base_1574178861180/work=/usr/local/src/conda/r-base-3.6.1 -fdebug-prefix-map=/home/msimenc/software/anaconda3/envs/R=/usr/local/src/conda-prefix  -c bed2vector.cpp -o bed2vector.o
In file included from /home/msimenc/software/anaconda3/envs/R/x86_64-conda_cos6-linux-gnu/include/c++/7.3.0/ext/hash_map:60:0,
                 from pc.h:4,
                 from bed2vector.cpp:1:
/home/msimenc/software/anaconda3/envs/R/x86_64-conda_cos6-linux-gnu/include/c++/7.3.0/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated. [-Wcpp]
 #warning \
  ^~~~~~~
bed2vector.cpp: In function 'SEXPREC* read_bed_ends(SEXP)':
bed2vector.cpp:118:55: error: template argument 3 is invalid
   hash_map<string, int, hash<string>,equal_to<string> > cind_map;
                                                       ^
bed2vector.cpp:163:59: error: template argument 3 is invalid
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                           ^
bed2vector.cpp:163:77: error: qualified-id in declaration before 'li'
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                                             ^~
bed2vector.cpp:165:10: error: 'li' was not declared in this scope
       if(li==cind_map.end()) {
          ^~
bed2vector.cpp:165:23: error: request for member 'end' in 'cind_map', which is of non-class type 'int'
       if(li==cind_map.end()) {
                       ^~~
bed2vector.cpp:169:10: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
  cind_map[chr]=cind;
          ^
bed2vector.cpp: In function 'SEXPREC* read_meland_old(SEXP)':
bed2vector.cpp:254:55: error: template argument 3 is invalid
   hash_map<string, int, hash<string>,equal_to<string> > cind_map;
                                                       ^
bed2vector.cpp:296:59: error: template argument 3 is invalid
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                           ^
bed2vector.cpp:296:77: error: qualified-id in declaration before 'li'
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                                             ^~
bed2vector.cpp:298:10: error: 'li' was not declared in this scope
       if(li==cind_map.end()) {
          ^~
bed2vector.cpp:298:23: error: request for member 'end' in 'cind_map', which is of non-class type 'int'
       if(li==cind_map.end()) {
                       ^~~
bed2vector.cpp:302:10: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
  cind_map[chr]=cind;
          ^
bed2vector.cpp: In function 'SEXPREC* read_meland(SEXP, SEXP)':
bed2vector.cpp:432:55: error: template argument 3 is invalid
   hash_map<string, int, hash<string>,equal_to<string> > cind_map;
                                                       ^
bed2vector.cpp:476:59: error: template argument 3 is invalid
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                           ^
bed2vector.cpp:476:77: error: qualified-id in declaration before 'li'
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                                             ^~
bed2vector.cpp:478:10: error: 'li' was not declared in this scope
       if(li==cind_map.end()) {
          ^~
bed2vector.cpp:478:23: error: request for member 'end' in 'cind_map', which is of non-class type 'int'
       if(li==cind_map.end()) {
                       ^~~
bed2vector.cpp:482:10: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
  cind_map[chr]=cind;
          ^
bed2vector.cpp: In function 'SEXPREC* read_eland_mismatches(SEXP)':
bed2vector.cpp:624:55: error: template argument 3 is invalid
   hash_map<string, int, hash<string>,equal_to<string> > cind_map;
                                                       ^
bed2vector.cpp:692:59: error: template argument 3 is invalid
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                           ^
bed2vector.cpp:692:77: error: qualified-id in declaration before 'li'
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                                             ^~
bed2vector.cpp:694:10: error: 'li' was not declared in this scope
       if(li==cind_map.end()) {
          ^~
bed2vector.cpp:694:23: error: request for member 'end' in 'cind_map', which is of non-class type 'int'
       if(li==cind_map.end()) {
                       ^~~
bed2vector.cpp:698:10: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
  cind_map[chr]=cind;
          ^
bed2vector.cpp: In function 'SEXPREC* read_eland(SEXP, SEXP, SEXP)':
bed2vector.cpp:817:55: error: template argument 3 is invalid
   hash_map<string, int, hash<string>,equal_to<string> > cind_map;
                                                       ^
bed2vector.cpp:868:59: error: template argument 3 is invalid
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                           ^
bed2vector.cpp:868:77: error: qualified-id in declaration before 'li'
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                                             ^~
bed2vector.cpp:870:10: error: 'li' was not declared in this scope
       if(li==cind_map.end()) {
          ^~
bed2vector.cpp:870:23: error: request for member 'end' in 'cind_map', which is of non-class type 'int'
       if(li==cind_map.end()) {
                       ^~~
bed2vector.cpp:874:10: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
  cind_map[chr]=cind;
          ^
bed2vector.cpp: In function 'SEXPREC* read_eland_extended(SEXP, SEXP, SEXP)':
bed2vector.cpp:1004:55: error: template argument 3 is invalid
   hash_map<string, int, hash<string>,equal_to<string> > cind_map;
                                                       ^
bed2vector.cpp:1078:59: error: template argument 3 is invalid
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                           ^
bed2vector.cpp:1078:77: error: qualified-id in declaration before 'li'
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                                             ^~
bed2vector.cpp:1080:10: error: 'li' was not declared in this scope
       if(li==cind_map.end()) {
          ^~
bed2vector.cpp:1080:23: error: request for member 'end' in 'cind_map', which is of non-class type 'int'
       if(li==cind_map.end()) {
                       ^~~
bed2vector.cpp:1084:10: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
  cind_map[chr]=cind;
          ^
bed2vector.cpp: In function 'SEXPREC* read_eland_multi(SEXP, SEXP, SEXP)':
bed2vector.cpp:1213:55: error: template argument 3 is invalid
   hash_map<string, int, hash<string>,equal_to<string> > cind_map;
                                                       ^
bed2vector.cpp:1366:59: error: template argument 3 is invalid
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                           ^
bed2vector.cpp:1366:77: error: qualified-id in declaration before 'li'
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                                             ^~
bed2vector.cpp:1368:10: error: 'li' was not declared in this scope
       if(li==cind_map.end()) {
          ^~
bed2vector.cpp:1368:23: error: request for member 'end' in 'cind_map', which is of non-class type 'int'
       if(li==cind_map.end()) {
                       ^~~
bed2vector.cpp:1372:10: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
  cind_map[chr]=cind;
          ^
bed2vector.cpp: In function 'SEXPREC* read_bowtie(SEXP, SEXP)':
bed2vector.cpp:1500:55: error: template argument 3 is invalid
   hash_map<string, int, hash<string>,equal_to<string> > cind_map;
                                                       ^
bed2vector.cpp:1575:59: error: template argument 3 is invalid
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                           ^
bed2vector.cpp:1575:77: error: qualified-id in declaration before 'li'
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                                             ^~
bed2vector.cpp:1577:10: error: 'li' was not declared in this scope
       if(li==cind_map.end()) {
          ^~
bed2vector.cpp:1577:23: error: request for member 'end' in 'cind_map', which is of non-class type 'int'
       if(li==cind_map.end()) {
                       ^~~
bed2vector.cpp:1581:10: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
  cind_map[chr]=cind;
          ^
bed2vector.cpp: In function 'SEXPREC* read_helicostabf(SEXP, SEXP)':
bed2vector.cpp:1714:55: error: template argument 3 is invalid
   hash_map<string, int, hash<string>,equal_to<string> > cind_map;
                                                       ^
bed2vector.cpp:1792:59: error: template argument 3 is invalid
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                           ^
bed2vector.cpp:1792:77: error: qualified-id in declaration before 'li'
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                                             ^~
bed2vector.cpp:1794:10: error: 'li' was not declared in this scope
       if(li==cind_map.end()) {
          ^~
bed2vector.cpp:1794:23: error: request for member 'end' in 'cind_map', which is of non-class type 'int'
       if(li==cind_map.end()) {
                       ^~~
bed2vector.cpp:1798:10: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
  cind_map[chr]=cind;
          ^
bed2vector.cpp: In function 'SEXPREC* read_maqmap(SEXP, SEXP)':
bed2vector.cpp:1941:55: error: template argument 3 is invalid
   hash_map<string, int, hash<string>,equal_to<string> > cind_map;
                                                       ^
bed2vector.cpp:1984:59: error: template argument 3 is invalid
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                           ^
bed2vector.cpp:1984:77: error: qualified-id in declaration before 'li'
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                                             ^~
bed2vector.cpp:1986:10: error: 'li' was not declared in this scope
       if(li==cind_map.end()) {
          ^~
bed2vector.cpp:1986:23: error: request for member 'end' in 'cind_map', which is of non-class type 'int'
       if(li==cind_map.end()) {
                       ^~~
bed2vector.cpp:1990:10: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
  cind_map[chr]=cind;
          ^
bed2vector.cpp: In function 'SEXPREC* read_tagalign(SEXP)':
bed2vector.cpp:2119:55: error: template argument 3 is invalid
   hash_map<string, int, hash<string>,equal_to<string> > cind_map;
                                                       ^
bed2vector.cpp:2161:59: error: template argument 3 is invalid
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                           ^
bed2vector.cpp:2161:77: error: qualified-id in declaration before 'li'
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                                             ^~
bed2vector.cpp:2163:10: error: 'li' was not declared in this scope
       if(li==cind_map.end()) {
          ^~
bed2vector.cpp:2163:23: error: request for member 'end' in 'cind_map', which is of non-class type 'int'
       if(li==cind_map.end()) {
                       ^~~
bed2vector.cpp:2167:10: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
  cind_map[chr]=cind;
          ^
bed2vector.cpp: In function 'SEXPREC* read_arachne(SEXP)':
bed2vector.cpp:2270:55: error: template argument 3 is invalid
   hash_map<string, int, hash<string>,equal_to<string> > cind_map;
                                                       ^
bed2vector.cpp:2329:59: error: template argument 3 is invalid
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                           ^
bed2vector.cpp:2329:77: error: qualified-id in declaration before 'li'
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                                             ^~
bed2vector.cpp:2331:10: error: 'li' was not declared in this scope
       if(li==cind_map.end()) {
          ^~
bed2vector.cpp:2331:23: error: request for member 'end' in 'cind_map', which is of non-class type 'int'
       if(li==cind_map.end()) {
                       ^~~
bed2vector.cpp:2335:10: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
  cind_map[chr]=cind;
          ^
bed2vector.cpp: In function 'SEXPREC* read_arachne_long(SEXP)':
bed2vector.cpp:2441:55: error: template argument 3 is invalid
   hash_map<string, int, hash<string>,equal_to<string> > cind_map;
                                                       ^
bed2vector.cpp:2530:59: error: template argument 3 is invalid
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                           ^
bed2vector.cpp:2530:77: error: qualified-id in declaration before 'li'
       hash_map<string, int, hash<string>,equal_to<string> >::const_iterator li=cind_map.find(chr);
                                                                             ^~
bed2vector.cpp:2532:10: error: 'li' was not declared in this scope
       if(li==cind_map.end()) {
          ^~
bed2vector.cpp:2532:23: error: request for member 'end' in 'cind_map', which is of non-class type 'int'
       if(li==cind_map.end()) {
                       ^~~
bed2vector.cpp:2536:10: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
  cind_map[chr]=cind;
          ^
make: *** [/home/msimenc/software/anaconda3/envs/R/lib/R/etc/Makeconf:175: bed2vector.o] Error 1
ERROR: compilation failed for package ‘spp’
* removing ‘/home/msimenc/software/anaconda3/envs/R/lib/R/library/spp’
Warning message:
In install.packages("./spp_1.14.tar.gz") :
  installation of package ‘./spp_1.14.tar.gz’ had non-zero exit status
leepc12 commented 4 years ago

Can you try with SPP on CRAN repo or this one?

mcsimenc commented 4 years ago

CRAN worked. Thanks!