YuLab-SMU / GOSemSim

:golf: GO-terms Semantic Similarity Measures
https://yulab-smu.top/biomedical-knowledge-mining-book/
58 stars 26 forks source link

Compiling error in installing GOSemSim in CentOS7 #27

Closed R1V3RJ1s closed 4 years ago

R1V3RJ1s commented 4 years ago
BiocManager::install('GOSemSim')

* installing *source* package ‘GOSemSim’ ...
** using staged installation
** libs
g++ -std=gnu++11 -I"/datadrive/software/R/lib64/R/include" -DNDEBUG  -I"/datadrive/software/R/lib64/R/library/Rcpp/include" -I/usr/local/include  -fpic  -g -O2  -c ICmethod.cpp -o ICmethod.o
In file included from /datadrive/software/R/lib64/R/library/Rcpp/include/RcppCommon.h:135:0,
                 from /datadrive/software/R/lib64/R/library/Rcpp/include/Rcpp.h:27,
                 from ICmethod.cpp:1:
ICmethod.cpp: In function ‘Rcpp::NumericMatrix infoContentMethod_cpp(Rcpp::StringVector&, Rcpp::StringVector&, Rcpp::List&, Rcpp::NumericVector&, const string&, const string&)’:
/datadrive/software/R/lib64/R/library/Rcpp/include/Rcpp/lang.h:27:20: error: ‘Rf_list2’ is not a member of ‘Rcpp’
 #define Rcpp_list2 Rf_list2
                    ^
ICmethod.cpp:117:32: note: in expansion of macro ‘Rcpp_list2’
   res.attr("dimnames") = Rcpp::Rcpp_list2( id1_, id2_ );
                                ^
/datadrive/software/R/lib64/R/library/Rcpp/include/Rcpp/lang.h:27:20: note: suggested alternative: ‘Rcpp_list20’
 #define Rcpp_list2 Rf_list2
                    ^
ICmethod.cpp:117:32: note: in expansion of macro ‘Rcpp_list2’
   res.attr("dimnames") = Rcpp::Rcpp_list2( id1_, id2_ );
                                ^
make: *** [ICmethod.o] Error 1
ERROR: compilation failed for package ‘GOSemSim’
* removing ‘/datadrive/software/R/lib64/R/library/GOSemSim’

The downloaded source packages are in
    ‘/tmp/RtmpvqmpKf/downloaded_packages’
Updating HTML index of packages in '.Library'
Making 'packages.html' ... done
Warning message:
In install.packages(...) :
  installation of package ‘GOSemSim’ had non-zero exit status

C/C++ compiler: 7.4.0, R version: 3.6.3, Bioconductor version: 3.10

mbardus commented 4 years ago

Same error on Ubuntu 18.04.4 LTS C/C++ compiler: 7.5.0, R version: 3.6.3, Bioconductor version: 3.10.10

Wy2160640 commented 4 years ago

Same error on Ubuntu 18.04.4 LTS

Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 7.5.0-3ubuntu1~18.04' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)

error message

> BiocManager::install('GOSemSim')
Bioconductor version 3.10 (BiocManager 1.30.10), R 3.6.3 (2020-02-29)
Installing package(s) 'GOSemSim'
trying URL 'https://mirrors.tuna.tsinghua.edu.cn/bioconductor/packages/3.10/bioc/src/contrib/GOSemSim_2.12.0.tar.gz'
Content type 'application/octet-stream' length 604483 bytes (590 KB)
==================================================
downloaded 590 KB

* installing *source* package ‘GOSemSim’ ...
** using staged installation
** libs
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG  -I"/usr/local/lib/R/site-library/Rcpp/include"   -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-V28x5H/r-base-3.6.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c ICmethod.cpp -o ICmethod.o
In file included from /usr/local/lib/R/site-library/Rcpp/include/RcppCommon.h:135:0,
                 from /usr/local/lib/R/site-library/Rcpp/include/Rcpp.h:27,
                 from ICmethod.cpp:1:
ICmethod.cpp: In function ‘Rcpp::NumericMatrix infoContentMethod_cpp(Rcpp::StringVector&, Rcpp::StringVector&, Rcpp::List&, Rcpp::NumericVector&, const string&, const string&)’:
/usr/local/lib/R/site-library/Rcpp/include/Rcpp/lang.h:27:20: error: ‘Rf_list2’ is not a member of ‘Rcpp’
 #define Rcpp_list2 Rf_list2
                    ^
ICmethod.cpp:117:32: note: in expansion of macro ‘Rcpp_list2’
   res.attr("dimnames") = Rcpp::Rcpp_list2( id1_, id2_ );
                                ^
/usr/local/lib/R/site-library/Rcpp/include/Rcpp/lang.h:27:20: note: suggested alternative: ‘Rcpp_list20’
 #define Rcpp_list2 Rf_list2
                    ^
ICmethod.cpp:117:32: note: in expansion of macro ‘Rcpp_list2’
   res.attr("dimnames") = Rcpp::Rcpp_list2( id1_, id2_ );
                                ^
/usr/lib/R/etc/Makeconf:177: recipe for target 'ICmethod.o' failed
make: *** [ICmethod.o] Error 1
ERROR: compilation failed for package ‘GOSemSim’
* removing ‘/usr/local/lib/R/site-library/GOSemSim’
GuangchuangYu commented 4 years ago

this is caused by the recent update of Rcpp package.

It has been fixed in GOSemSim v>=2.12.1.

Wy2160640 commented 4 years ago

Thanks, @GuangchuangYu. I tried to solve it using the YuLab-SMU/GOSemSim code

install.packages("devtools")
devtools::install_github("YuLab-SMU/GOSemSim")
qins commented 4 years ago

this is caused by the recent update of Rcpp package.

It has been fixed in GOSemSim v>=2.12.1.

The response is timely and helpful.