Code Monkey home page Code Monkey logo

Comments (15)

bjmt avatar bjmt commented on July 17, 2024

This error has to do with the RcppThread package. It requires a newish c++11 capable compiler, otherwise you get these errors. Try updating it if you can.

Related issues:

#3
tnagler/RcppThread#13

from universalmotif.

JianGuoZhou3 avatar JianGuoZhou3 commented on July 17, 2024

Hi, it's seems didn't work.

[root@localhost ~]# sudo yum install devtoolset-7-gcc*
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * centos-sclo-rh: mirrors.nju.edu.cn
 * centos-sclo-sclo: mirrors.aliyun.com
 * elrepo: hkg.mirror.rackspace.com
 * extras: mirrors.aliyun.com
 * nux-dextop: mirror.li.nux.ro
 * remi-safe: mirrors.tuna.tsinghua.edu.cn
 * rpmfusion-free-updates: mirrors.ustc.edu.cn
 * rpmfusion-nonfree-updates: mirrors.ustc.edu.cn
 * updates: mirrors.aliyun.com
正在解决依赖关系
--> 正在检查事务
---> 软件包 devtoolset-7-gcc.x86_64.0.7.3.1-5.16.el7 将被 安装
--> 正在处理依赖关系 devtoolset-7-binutils >= 2.22.52.0.1,它被软件包 devtoolset-7-gcc-7.3.1-5.16.el7.x86_64 需要
--> 正在处理依赖关系 devtoolset-7-runtime,它被软件包 devtoolset-7-gcc-7.3.1-5.16.el7.x86_64 需要
---> 软件包 devtoolset-7-gcc-c++.x86_64.0.7.3.1-5.16.el7 将被 安装
--> 正在处理依赖关系 devtoolset-7-libstdc++-devel = 7.3.1-5.16.el7,它被软件包 devtoolset-7-gcc-c++-7.3.1-5.16.el7.x86_64 需要
---> 软件包 devtoolset-7-gcc-gdb-plugin.x86_64.0.7.3.1-5.16.el7 将被 安装
---> 软件包 devtoolset-7-gcc-gfortran.x86_64.0.7.3.1-5.16.el7 将被 安装
--> 正在处理依赖关系 devtoolset-7-libquadmath-devel = 7.3.1-5.16.el7,它被软件包 devtoolset-7-gcc-gfortran-7.3.1-5.16.el7.x86_64 需要
--> 正在处理依赖关系 libgfortran4 >= 7.1.1-2,它被软件包 devtoolset-7-gcc-gfortran-7.3.1-5.16.el7.x86_64 需要
---> 软件包 devtoolset-7-gcc-plugin-devel.x86_64.0.7.3.1-5.16.el7 将被 安装
--> 正在检查事务
---> 软件包 devtoolset-7-binutils.x86_64.0.2.28-11.el7 将被 安装
---> 软件包 devtoolset-7-libquadmath-devel.x86_64.0.7.3.1-5.16.el7 将被 安装
---> 软件包 devtoolset-7-libstdc++-devel.x86_64.0.7.3.1-5.16.el7 将被 安装
---> 软件包 devtoolset-7-runtime.x86_64.0.7.1-4.el7 将被 安装
---> 软件包 libgfortran4.x86_64.0.8.3.1-2.1.1.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

=================================================================================================================
 Package                                 架构            版本                      源                       大小
=================================================================================================================
正在安装:
 devtoolset-7-gcc                        x86_64          7.3.1-5.16.el7            centos-sclo-rh           29 M
 devtoolset-7-gcc-c++                    x86_64          7.3.1-5.16.el7            centos-sclo-rh           11 M
 devtoolset-7-gcc-gdb-plugin             x86_64          7.3.1-5.16.el7            centos-sclo-rh          124 k
 devtoolset-7-gcc-gfortran               x86_64          7.3.1-5.16.el7            centos-sclo-rh           11 M
 devtoolset-7-gcc-plugin-devel           x86_64          7.3.1-5.16.el7            centos-sclo-rh          1.3 M
为依赖而安装:
 devtoolset-7-binutils                   x86_64          2.28-11.el7               centos-sclo-rh          5.3 M
 devtoolset-7-libquadmath-devel          x86_64          7.3.1-5.16.el7            centos-sclo-rh          154 k
 devtoolset-7-libstdc++-devel            x86_64          7.3.1-5.16.el7            centos-sclo-rh          2.5 M
 devtoolset-7-runtime                    x86_64          7.1-4.el7                 centos-sclo-rh           20 k
 libgfortran4                            x86_64          8.3.1-2.1.1.el7           base                    686 k

事务概要
=================================================================================================================
安装  5 软件包 (+5 依赖软件包)

总下载量:62 M
安装大小:175 M
Is this ok [y/d/N]: y
Downloading packages:
警告:/var/cache/yum/x86_64/7/centos-sclo-rh/packages/devtoolset-7-gcc-gdb-plugin-7.3.1-5.16.el7.x86_64.rpm: 头V4 RSA/SHA1 Signature, 密钥 ID f2ee9d55: NOKEY
devtoolset-7-gcc-gdb-plugin-7.3.1-5.16.el7.x86_64.rpm 的公钥尚未安装
(1/10): devtoolset-7-gcc-gdb-plugin-7.3.1-5.16.el7.x86_64.rpm                             | 124 kB  00:00:00     
(2/10): devtoolset-7-gcc-plugin-devel-7.3.1-5.16.el7.x86_64.rpm                           | 1.3 MB  00:00:00     
(3/10): devtoolset-7-libquadmath-devel-7.3.1-5.16.el7.x86_64.rpm                          | 154 kB  00:00:00     
(4/10): devtoolset-7-libstdc++-devel-7.3.1-5.16.el7.x86_64.rpm                            | 2.5 MB  00:00:00     
(5/10): devtoolset-7-runtime-7.1-4.el7.x86_64.rpm                                         |  20 kB  00:00:00     
(6/10): libgfortran4-8.3.1-2.1.1.el7.x86_64.rpm                                           | 686 kB  00:00:00     
(7/10): devtoolset-7-gcc-7.3.1-5.16.el7.x86_64.rpm                                        |  29 MB  00:00:01     
(8/10): devtoolset-7-binutils-2.28-11.el7.x86_64.rpm                                      | 5.3 MB  00:00:06     
(9/10): devtoolset-7-gcc-c++-7.3.1-5.16.el7.x86_64.rpm                                    |  11 MB  00:00:06     
(10/10): devtoolset-7-gcc-gfortran-7.3.1-5.16.el7.x86_64.rpm                              |  11 MB  00:00:08     
-----------------------------------------------------------------------------------------------------------------
总计                                                                             6.9 MB/s |  62 MB  00:00:08     
从 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo 检索密钥
导入 GPG key 0xF2EE9D55:
 用户ID     : "CentOS SoftwareCollections SIG (https://wiki.centos.org/SpecialInterestGroup/SCLo) <[email protected]>"
 指纹       : c4db d535 b1fb ba14 f8ba 64a8 4eb8 4e71 f2ee 9d55
 软件包     : centos-release-scl-rh-2-3.el7.centos.noarch (@extras)
 来自       : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo
是否继续?[y/N]:y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : devtoolset-7-runtime-7.1-4.el7.x86_64                                                       1/10 


  正在安装    : devtoolset-7-binutils-2.28-11.el7.x86_64                                                    2/10 
  正在安装    : devtoolset-7-libstdc++-devel-7.3.1-5.16.el7.x86_64                                          3/10 
  正在安装    : libgfortran4-8.3.1-2.1.1.el7.x86_64                                                         4/10 
  正在安装    : devtoolset-7-gcc-7.3.1-5.16.el7.x86_64                                                      5/10 
  正在安装    : devtoolset-7-libquadmath-devel-7.3.1-5.16.el7.x86_64                                        6/10 
  正在安装    : devtoolset-7-gcc-gfortran-7.3.1-5.16.el7.x86_64                                             7/10 
  正在安装    : devtoolset-7-gcc-plugin-devel-7.3.1-5.16.el7.x86_64                                         8/10 
  正在安装    : devtoolset-7-gcc-gdb-plugin-7.3.1-5.16.el7.x86_64                                           9/10 
  正在安装    : devtoolset-7-gcc-c++-7.3.1-5.16.el7.x86_64                                                 10/10 
  验证中      : devtoolset-7-gcc-gfortran-7.3.1-5.16.el7.x86_64                                             1/10 
  验证中      : devtoolset-7-gcc-plugin-devel-7.3.1-5.16.el7.x86_64                                         2/10 
  验证中      : devtoolset-7-gcc-gdb-plugin-7.3.1-5.16.el7.x86_64                                           3/10 
  验证中      : devtoolset-7-libquadmath-devel-7.3.1-5.16.el7.x86_64                                        4/10 
  验证中      : devtoolset-7-gcc-7.3.1-5.16.el7.x86_64                                                      5/10 
  验证中      : libgfortran4-8.3.1-2.1.1.el7.x86_64                                                         6/10 
  验证中      : devtoolset-7-binutils-2.28-11.el7.x86_64                                                    7/10 
  验证中      : devtoolset-7-libstdc++-devel-7.3.1-5.16.el7.x86_64                                          8/10 
  验证中      : devtoolset-7-gcc-c++-7.3.1-5.16.el7.x86_64                                                  9/10 
  验证中      : devtoolset-7-runtime-7.1-4.el7.x86_64                                                      10/10 

已安装:
  devtoolset-7-gcc.x86_64 0:7.3.1-5.16.el7                  devtoolset-7-gcc-c++.x86_64 0:7.3.1-5.16.el7         
  devtoolset-7-gcc-gdb-plugin.x86_64 0:7.3.1-5.16.el7       devtoolset-7-gcc-gfortran.x86_64 0:7.3.1-5.16.el7    
  devtoolset-7-gcc-plugin-devel.x86_64 0:7.3.1-5.16.el7    

作为依赖被安装:
  devtoolset-7-binutils.x86_64 0:2.28-11.el7             devtoolset-7-libquadmath-devel.x86_64 0:7.3.1-5.16.el7  
  devtoolset-7-libstdc++-devel.x86_64 0:7.3.1-5.16.el7   devtoolset-7-runtime.x86_64 0:7.1-4.el7                 
  libgfortran4.x86_64 0:8.3.1-2.1.1.el7                 

完毕!
[root@localhost ~]# 
[root@localhost ~]# 
[root@localhost ~]# scl enable devtoolset-7 bash
[root@localhost ~]# which gcc
/opt/rh/devtoolset-7/root/usr/bin/gcc
[root@localhost ~]# gcc --version
gcc (GCC) 7.3.1 20180303 (Red Hat 7.3.1-5)
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

This seems updated very nicely, and I try to install universalmotif.

BiocManager::install("universalmotif") 
Bioconductor version 3.12 (BiocManager 1.30.10), R 4.0.2 (2020-06-22) 
Installing package(s) 'universalmotif' trying URL 'https://bioconductor.org/packages/3.12/bioc/src/contrib/universalmotif_1.8.3.tar.gz' Content type 'application/x-gzip' length 3732415 bytes (3.6 MB) ================================================== downloaded 3.6 MB  * 
installing *source* package ‘universalmotif’ ... ** using staged installation ** libs g++ -std=gnu++11 -I"/usr/local/lib64/R/include" -DNDEBUG  -I'/home/zhou/Rlib/Rcpp/include' -I'/home/zhou/Rlib/RcppThread/include' -I/usr/local/include   -fpic  -g -O2  -c RcppExports.cpp -o RcppExports.o g++ -std=gnu++11 -I"/usr/local/lib64/R/include" -DNDEBUG  -I'/home/zhou/Rlib/Rcpp/include' -I'/home/zhou/Rlib/RcppThread/include' -I/usr/local/include   -fpic  -g -O2  -c add_multifreq.cpp -o add_multifreq.o g++ -std=gnu++11 -I"/usr/local/lib64/R/include" -DNDEBUG  -I'/home/zhou/Rlib/Rcpp/include' -I'/home/zhou/Rlib/RcppThread/include' -I/usr/local/include   -fpic  -g -O2  -c compare_motifs.cpp -o compare_motifs.o In file included from /home/zhou/Rlib/RcppThread/include/RcppThread.h:11:0,                  from compare_motifs.cpp:2: /home/zhou/Rlib/RcppThread/include/RcppThread/Thread.hpp: In lambda function: /home/zhou/Rlib/RcppThread/include/RcppThread/Thread.hpp:42:19: error: parameter packs not expanded with ‘...’:                  f(args...);                   
 ^ /home/zhou/Rlib/RcppThread/include/RcppThread/Thread.hpp:42:19: note:         ‘args’ /home/zhou/Rlib/RcppThread/include/RcppThread/Thread.hpp:42:23: error: expansion pattern ‘args’ contains no argument packs                  f(args...);                       
 ^ In file included from /home/zhou/Rlib/RcppThread/include/RcppThread.h:13:0,                  from compare_motifs.cpp:2: /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In member function ‘void RcppThread::ThreadPool::push(F&&, Args&& ...)’: /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:31: error: expected ‘,’ before ‘...’ token          jobs_.emplace([f, args...] { f(args...); });                                ^ /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:31: error: expected identifier before ‘...’ token /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:34: error: parameter packs not expanded with ‘...’:          jobs_.emplace([f, args...] { f(args...); });                                   ^ 
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:34: note:         ‘args’ /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In lambda function: /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:44: error: expansion pattern ‘args’ contains no argument packs          jobs_.emplace([f, args...] { f(args...); });                                             ^ /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In member function ‘std::future<decltype (f(args ...))> RcppThread::ThreadPool::pushReturn(F&&, Args&& ...)’: /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:146:54: error: expected ‘,’ before ‘...’ token      auto job = std::make_shared<jobPackage>([&f, args...] {                                                       ^ /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:146:54: error: expected identifier before ‘...’ token /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:146:57: error: parameter packs not expanded with ‘...’:      auto job = std::make_shared<jobPackage>([&f, args...] {                                                          ^ /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:146:57: note:         ‘args’ /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In lambda function: /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:147:22: error: expansion pattern ‘args’ contains no argument packs          return f(args...);                      
 ^ /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In instantiation of ‘struct RcppThread::ThreadPool::push(F&&, Args&& ...) [with F = RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = compare_motifs_cpp(const List&, const std::vector<int>&, const std::vector<int>&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda13&; ptrdiff_t = long int; size_t = long unsigned int]::__lambda8&; Args = {const RcppThread::Batch&}]::__lambda5’: /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:9:   required from ‘void RcppThread::ThreadPool::push(F&&, Args&& ...) [with F = RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = compare_motifs_cpp(const List&, const std::vector<int>&, const std::vector<int>&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda13&; ptrdiff_t = long int; size_t = long unsigned int]::__lambda8&; Args = {const RcppThread::Batch&}]’ /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:201:9:   required from ‘void RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = compare_motifs_cpp(const List&, const std::vector<int>&, const std::vector<int>&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda13&; ptrdiff_t = long int; size_t = long unsigned int]’ /home/zhou/Rlib/RcppThread/include/RcppThread/parallelFor.hpp:48:5:   required from ‘void RcppThread::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t, size_t) [with F = compare_motifs_cpp(const List&, const std::vector<int>&, const std::vector<int>&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda13; ptrdiff_t = long int; size_t = long unsigned int]’ compare_motifs.cpp:1426:18:   required from here /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:27: error: using invalid field ‘RcppThread::ThreadPool::push(F&&, Args&& ...)::__lambda5::__args’          jobs_.emplace([f, args...] { f(args...); });                           
 ^ /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In instantiation of ‘struct RcppThread::ThreadPool::push(F&&, Args&& ...) [with F = RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = compare_motifs_all_cpp(const List&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda14&; ptrdiff_t = long int; size_t = long unsigned int]::__lambda8&; Args = {const RcppThread::Batch&}]::__lambda5’: /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:9:   required from ‘void RcppThread::ThreadPool::push(F&&, Args&& ...) [with F = RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = compare_motifs_all_cpp(const List&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda14&; ptrdiff_t = long int; size_t = long unsigned int]::__lambda8&; Args = {const RcppThread::Batch&}]’ /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:201:9:   required from ‘void RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = compare_motifs_all_cpp(const List&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda14&; ptrdiff_t = long int; size_t = long unsigned int]’ 
/home/zhou/Rlib/RcppThread/include/RcppThread/parallelFor.hpp:48:5:   required from ‘void RcppThread::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t, size_t) [with F = compare_motifs_all_cpp(const List&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda14; ptrdiff_t = long int; size_t = long unsigned int]’ compare_motifs.cpp:1485:18:   required from here /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:27: error: using invalid field ‘RcppThread::ThreadPool::push(F&&, Args&& ...)::__lambda5::__args’ /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In instantiation of ‘struct RcppThread::ThreadPool::push(F&&, Args&& ...) [with F = RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = pval_extractor(const std::vector<int>&, const std::vector<double>&, const std::vector<int>&, const std::vector<int>&, const string&, const std::vector<int>&, const std::vector<int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<std::basic_string<char> >&, int)::__lambda15&; ptrdiff_t = long int; size_t = long unsigned int]::__lambda8&; Args = {const RcppThread::Batch&}]::__lambda5’: /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:9:   required from ‘void RcppThread::ThreadPool::push(F&&, Args&& ...) [with F = RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = pval_extractor(const std::vector<int>&, const std::vector<double>&, const std::vector<int>&, const std::vector<int>&, const string&, const std::vector<int>&, const std::vector<int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<std::basic_string<char> >&, int)::__lambda15&; ptrdiff_t = long int; size_t = long unsigned int]::__lambda8&; Args = {const RcppThread::Batch&}]’ 
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:201:9:   required from ‘void RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = pval_extractor(const std::vector<int>&, const std::vector<double>&, const std::vector<int>&, const std::vector<int>&, const string&, const std::vector<int>&, const std::vector<int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<std::basic_string<char> >&, int)::__lambda15&; ptrdiff_t = long int; size_t = long unsigned int]’ /home/zhou/Rlib/RcppThread/include/RcppThread/parallelFor.hpp:48:5:   required from ‘void RcppThread::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t, size_t) [with F = pval_extractor(const std::vector<int>&, const std::vector<double>&, const std::vector<int>&, const std::vector<int>&, const string&, const std::vector<int>&, const std::vector<int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<std::basic_string<char> >&, int)::__lambda15; ptrdiff_t = long int; size_t = long unsigned int]’ compare_motifs.cpp:1859:18:   required from here /home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:27: error: using invalid field ‘RcppThread::ThreadPool::push(F&&, Args&& ...)::__lambda5::__args’ make: *** [compare_motifs.o] Error 1 ERROR: compilation failed for package ‘universalmotif’ * removing ‘/home/zhou/Rlib/universalmotif’  The downloaded source packages are in 	
‘/tmp/RtmpS1nRO3/downloaded_packages’ Installation path not writeable, unable to update packages: boot, class, cluster,   codetools, foreign, KernSmooth, MASS, Matrix, mgcv, nlme, nnet, spatial, survival Old packages: 'e1071', 'shinyWidgets', 'spatstat.utils' 
Update all/some/none? [a/s/n]:  n Warning message: In install.packages(...) :   installation of package ‘universalmotif’ had non-zero exit status
--
 
> | >
>

from universalmotif.

bjmt avatar bjmt commented on July 17, 2024

Hmm. Not entirely sure. (I don't use CentOS.) Perhaps try installing a newer version still? Are you sure that R itself is using your updated compiler and not the old one?

Apologies for tagging you, but @tnagler do you have any advice?

from universalmotif.

JianGuoZhou3 avatar JianGuoZhou3 commented on July 17, 2024

it's fine, thx.
I will check other methods.
Best,
Jian-Guo

from universalmotif.

tnagler avatar tnagler commented on July 17, 2024

Error messages indicate that the compiler does not fully support c++11. Are you sure that BiocManager::install is accessing the new version of g++?

from universalmotif.

JianGuoZhou3 avatar JianGuoZhou3 commented on July 17, 2024

accessing

Hi @tnagler I just update the gcc, and re-install the software.

[root@localhost ~]# gcc --version
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)
Copyright © 2015 Free Software Foundation, Inc.

from universalmotif.

JianGuoZhou3 avatar JianGuoZhou3 commented on July 17, 2024
[root@localhost ~]# yum install devtoolset-8-gcc devtoolset-8-gcc-c++
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * centos-sclo-rh: mirrors.nju.edu.cn
 * centos-sclo-sclo: mirrors.aliyun.com
 * elrepo: hkg.mirror.rackspace.com
 * extras: mirrors.aliyun.com
 * nux-dextop: mirror.li.nux.ro
 * remi-safe: mirrors.tuna.tsinghua.edu.cn
 * rpmfusion-free-updates: mirrors.ustc.edu.cn
 * rpmfusion-nonfree-updates: mirrors.ustc.edu.cn
 * updates: mirrors.aliyun.com
正在解决依赖关系
--> 正在检查事务
---> 软件包 devtoolset-8-gcc.x86_64.0.8.3.1-3.2.el7 将被 安装
--> 正在处理依赖关系 devtoolset-8-binutils >= 2.22.52.0.1,它被软件包 devtoolset-8-gcc-8.3.1-3.2.el7.x86_64 需要
--> 正在处理依赖关系 devtoolset-8-runtime,它被软件包 devtoolset-8-gcc-8.3.1-3.2.el7.x86_64 需要
---> 软件包 devtoolset-8-gcc-c++.x86_64.0.8.3.1-3.2.el7 将被 安装
--> 正在处理依赖关系 devtoolset-8-libstdc++-devel = 8.3.1-3.2.el7,它被软件包 devtoolset-8-gcc-c++-8.3.1-3.2.el7.x86_64 需要
--> 正在检查事务
---> 软件包 devtoolset-8-binutils.x86_64.0.2.30-55.el7.2 将被 安装
---> 软件包 devtoolset-8-libstdc++-devel.x86_64.0.8.3.1-3.2.el7 将被 安装
---> 软件包 devtoolset-8-runtime.x86_64.0.8.1-1.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

========================================================================================================================================================================================================================
 Package                                                          架构                                       版本                                              源                                                  大小
========================================================================================================================================================================================================================
正在安装:
 devtoolset-8-gcc                                                 x86_64                                     8.3.1-3.2.el7                                     centos-sclo-rh                                      30 M
 devtoolset-8-gcc-c++                                             x86_64                                     8.3.1-3.2.el7                                     centos-sclo-rh                                      12 M
为依赖而安装:
 devtoolset-8-binutils                                            x86_64                                     2.30-55.el7.2                                     centos-sclo-rh                                     5.5 M
 devtoolset-8-libstdc++-devel                                     x86_64                                     8.3.1-3.2.el7                                     centos-sclo-rh                                     2.7 M
 devtoolset-8-runtime                                             x86_64                                     8.1-1.el7                                         centos-sclo-rh                                      20 k

事务概要
========================================================================================================================================================================================================================
安装  2 软件包 (+3 依赖软件包)

总下载量:50 M
安装大小:141 M
Is this ok [y/d/N]: y
Downloading packages:
(1/5): devtoolset-8-libstdc++-devel-8.3.1-3.2.el7.x86_64.rpm                                                                                                                                     | 2.7 MB  00:00:00     
(2/5): devtoolset-8-gcc-c++-8.3.1-3.2.el7.x86_64.rpm                                                                                                                                             |  12 MB  00:00:00     
(3/5): devtoolset-8-binutils-2.30-55.el7.2.x86_64.rpm                                                                                                                                            | 5.5 MB  00:00:01     
(4/5): devtoolset-8-runtime-8.1-1.el7.x86_64.rpm                                                                                                                                                 |  20 kB  00:00:02     
(5/5): devtoolset-8-gcc-8.3.1-3.2.el7.x86_64.rpm                                                                                                                                                 |  30 MB  00:00:03     
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
总计                                                                                                                                                                                     14 MB/s |  50 MB  00:00:03     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : devtoolset-8-runtime-8.1-1.el7.x86_64                                                                                                                                                               1/5 
  正在安装    : devtoolset-8-binutils-2.30-55.el7.2.x86_64                                                                                                                                                          2/5 
  正在安装    : devtoolset-8-libstdc++-devel-8.3.1-3.2.el7.x86_64                                                                                                                                                   3/5 
  正在安装    : devtoolset-8-gcc-8.3.1-3.2.el7.x86_64                                                                                                                                                               4/5 
  正在安装    : devtoolset-8-gcc-c++-8.3.1-3.2.el7.x86_64                                                                                                                                                           5/5 
  验证中      : devtoolset-8-runtime-8.1-1.el7.x86_64                                                                                                                                                               1/5 
  验证中      : devtoolset-8-gcc-8.3.1-3.2.el7.x86_64                                                                                                                                                               2/5 
  验证中      : devtoolset-8-gcc-c++-8.3.1-3.2.el7.x86_64                                                                                                                                                           3/5 
  验证中      : devtoolset-8-binutils-2.30-55.el7.2.x86_64                                                                                                                                                          4/5 
  验证中      : devtoolset-8-libstdc++-devel-8.3.1-3.2.el7.x86_64                                                                                                                                                   5/5 

已安装:
  devtoolset-8-gcc.x86_64 0:8.3.1-3.2.el7                                                                  devtoolset-8-gcc-c++.x86_64 0:8.3.1-3.2.el7                                                                 

作为依赖被安装:
  devtoolset-8-binutils.x86_64 0:2.30-55.el7.2                           devtoolset-8-libstdc++-devel.x86_64 0:8.3.1-3.2.el7                           devtoolset-8-runtime.x86_64 0:8.1-1.el7                          

完毕!
[root@localhost ~]# scl enable devtoolset-8 -- bash
[root@localhost ~]# 

I used the following code to update those.
image

And re-install,

> BiocManager::install("universalmotif")
BiocManager::install("universalmotif")
Bioconductor version 3.12 (BiocManager 1.30.10), R 4.0.2 (2020-06-22)
Installing package(s) 'universalmotif'
trying URL 'https://bioconductor.org/packages/3.12/bioc/src/contrib/universalmotif_1.8.3.tar.gz'
Content type 'application/x-gzip' length 3732415 bytes (3.6 MB)
==================================================
downloaded 3.6 MB

* installing *source* package ‘universalmotif’ ...
** using staged installation
** libs
g++ -std=gnu++11 -I"/usr/local/lib64/R/include" -DNDEBUG  -I'/home/zhou/Rlib/Rcpp/include' -I'/home/zhou/Rlib/RcppThread/include' -I/usr/local/include   -fpic  -g -O2  -c RcppExports.cpp -o RcppExports.o
g++ -std=gnu++11 -I"/usr/local/lib64/R/include" -DNDEBUG  -I'/home/zhou/Rlib/Rcpp/include' -I'/home/zhou/Rlib/RcppThread/include' -I/usr/local/include   -fpic  -g -O2  -c add_multifreq.cpp -o add_multifreq.o
g++ -std=gnu++11 -I"/usr/local/lib64/R/include" -DNDEBUG  -I'/home/zhou/Rlib/Rcpp/include' -I'/home/zhou/Rlib/RcppThread/include' -I/usr/local/include   -fpic  -g -O2  -c compare_motifs.cpp -o compare_motifs.o
In file included from /home/zhou/Rlib/RcppThread/include/RcppThread.h:11:0,
                 from compare_motifs.cpp:2:
/home/zhou/Rlib/RcppThread/include/RcppThread/Thread.hpp: In lambda function:
/home/zhou/Rlib/RcppThread/include/RcppThread/Thread.hpp:42:19: error: parameter packs not expanded with ‘...’:
                 f(args...);
                   ^
/home/zhou/Rlib/RcppThread/include/RcppThread/Thread.hpp:42:19: note:         ‘args’
/home/zhou/Rlib/RcppThread/include/RcppThread/Thread.hpp:42:23: error: expansion pattern ‘args’ contains no argument packs
                 f(args...);
                       ^
In file included from /home/zhou/Rlib/RcppThread/include/RcppThread.h:13:0,
                 from compare_motifs.cpp:2:
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In member function ‘void RcppThread::ThreadPool::push(F&&, Args&& ...)’:
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:31: error: expected ‘,’ before ‘...’ token
         jobs_.emplace([f, args...] { f(args...); });
                               ^
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:31: error: expected identifier before ‘...’ token
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:34: error: parameter packs not expanded with ‘...’:
         jobs_.emplace([f, args...] { f(args...); });
                                  ^
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:34: note:         ‘args’
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In lambda function:
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:44: error: expansion pattern ‘args’ contains no argument packs
         jobs_.emplace([f, args...] { f(args...); });
                                            ^
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In member function ‘std::future<decltype (f(args ...))> RcppThread::ThreadPool::pushReturn(F&&, Args&& ...)’:
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:146:54: error: expected ‘,’ before ‘...’ token
     auto job = std::make_shared<jobPackage>([&f, args...] {
                                                      ^
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:146:54: error: expected identifier before ‘...’ token
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:146:57: error: parameter packs not expanded with ‘...’:
     auto job = std::make_shared<jobPackage>([&f, args...] {
                                                         ^
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:146:57: note:         ‘args’
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In lambda function:
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:147:22: error: expansion pattern ‘args’ contains no argument packs
         return f(args...);
                      ^
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In instantiation of ‘struct RcppThread::ThreadPool::push(F&&, Args&& ...) [with F = RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = compare_motifs_cpp(const List&, const std::vector<int>&, const std::vector<int>&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda13&; ptrdiff_t = long int; size_t = long unsigned int]::__lambda8&; Args = {const RcppThread::Batch&}]::__lambda5’:
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:9:   required from ‘void RcppThread::ThreadPool::push(F&&, Args&& ...) [with F = RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = compare_motifs_cpp(const List&, const std::vector<int>&, const std::vector<int>&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda13&; ptrdiff_t = long int; size_t = long unsigned int]::__lambda8&; Args = {const RcppThread::Batch&}]’
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:201:9:   required from ‘void RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = compare_motifs_cpp(const List&, const std::vector<int>&, const std::vector<int>&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda13&; ptrdiff_t = long int; size_t = long unsigned int]’
/home/zhou/Rlib/RcppThread/include/RcppThread/parallelFor.hpp:48:5:   required from ‘void RcppThread::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t, size_t) [with F = compare_motifs_cpp(const List&, const std::vector<int>&, const std::vector<int>&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda13; ptrdiff_t = long int; size_t = long unsigned int]’
compare_motifs.cpp:1426:18:   required from here
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:27: error: using invalid field ‘RcppThread::ThreadPool::push(F&&, Args&& ...)::__lambda5::__args’
         jobs_.emplace([f, args...] { f(args...); });
                           ^
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In instantiation of ‘struct RcppThread::ThreadPool::push(F&&, Args&& ...) [with F = RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = compare_motifs_all_cpp(const List&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda14&; ptrdiff_t = long int; size_t = long unsigned int]::__lambda8&; Args = {const RcppThread::Batch&}]::__lambda5’:
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:9:   required from ‘void RcppThread::ThreadPool::push(F&&, Args&& ...) [with F = RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = compare_motifs_all_cpp(const List&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda14&; ptrdiff_t = long int; size_t = long unsigned int]::__lambda8&; Args = {const RcppThread::Batch&}]’
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:201:9:   required from ‘void RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = compare_motifs_all_cpp(const List&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda14&; ptrdiff_t = long int; size_t = long unsigned int]’
/home/zhou/Rlib/RcppThread/include/RcppThread/parallelFor.hpp:48:5:   required from ‘void RcppThread::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t, size_t) [with F = compare_motifs_all_cpp(const List&, const string&, double, bool, std::vector<std::vector<double> >&, int, bool, double, bool, int, double, const std::vector<double>&, const string&)::__lambda14; ptrdiff_t = long int; size_t = long unsigned int]’
compare_motifs.cpp:1485:18:   required from here
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:27: error: using invalid field ‘RcppThread::ThreadPool::push(F&&, Args&& ...)::__lambda5::__args’
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp: In instantiation of ‘struct RcppThread::ThreadPool::push(F&&, Args&& ...) [with F = RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = pval_extractor(const std::vector<int>&, const std::vector<double>&, const std::vector<int>&, const std::vector<int>&, const string&, const std::vector<int>&, const std::vector<int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<std::basic_string<char> >&, int)::__lambda15&; ptrdiff_t = long int; size_t = long unsigned int]::__lambda8&; Args = {const RcppThread::Batch&}]::__lambda5’:
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:9:   required from ‘void RcppThread::ThreadPool::push(F&&, Args&& ...) [with F = RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = pval_extractor(const std::vector<int>&, const std::vector<double>&, const std::vector<int>&, const std::vector<int>&, const string&, const std::vector<int>&, const std::vector<int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<std::basic_string<char> >&, int)::__lambda15&; ptrdiff_t = long int; size_t = long unsigned int]::__lambda8&; Args = {const RcppThread::Batch&}]’
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:201:9:   required from ‘void RcppThread::ThreadPool::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t) [with F = pval_extractor(const std::vector<int>&, const std::vector<double>&, const std::vector<int>&, const std::vector<int>&, const string&, const std::vector<int>&, const std::vector<int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<std::basic_string<char> >&, int)::__lambda15&; ptrdiff_t = long int; size_t = long unsigned int]’
/home/zhou/Rlib/RcppThread/include/RcppThread/parallelFor.hpp:48:5:   required from ‘void RcppThread::parallelFor(ptrdiff_t, ptrdiff_t, F&&, size_t, size_t) [with F = pval_extractor(const std::vector<int>&, const std::vector<double>&, const std::vector<int>&, const std::vector<int>&, const string&, const std::vector<int>&, const std::vector<int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<std::basic_string<char> >&, int)::__lambda15; ptrdiff_t = long int; size_t = long unsigned int]’
compare_motifs.cpp:1859:18:   required from here
/home/zhou/Rlib/RcppThread/include/RcppThread/ThreadPool.hpp:129:27: error: using invalid field ‘RcppThread::ThreadPool::push(F&&, Args&& ...)::__lambda5::__args’
make: *** [compare_motifs.o] Error 1
ERROR: compilation failed for package ‘universalmotif’
* removing ‘/home/zhou/Rlib/universalmotif’

The downloaded source packages are in
	‘/tmp/RtmpS1nRO3/downloaded_packages’
Installation path not writeable, unable to update packages: boot, class, cluster,
  codetools, foreign, KernSmooth, MASS, Matrix, mgcv, nlme, nnet, spatial, survival
Old packages: 'e1071', 'shinyWidgets', 'spatstat.sparse', 'spatstat.utils'
Update all/some/none? [a/s/n]: 
n
Warning message:
In install.packages(...) :
  installation of package ‘universalmotif’ had non-zero exit status

from universalmotif.

tnagler avatar tnagler commented on July 17, 2024

Could you run system("g++ --version") from the R console?

from universalmotif.

JianGuoZhou3 avatar JianGuoZhou3 commented on July 17, 2024

> system("g++ --version") 
g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44) 
Copyright (C) 2015 Free Software Foundation, Inc. 
This is free software; see the source for copying conditions.  
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
--
 
> | >
>

image

from universalmotif.

tnagler avatar tnagler commented on July 17, 2024

so R is not actually using your newly installed version of gcc. I'm not sure how CentOS is setting these things up, you could try running system("CXX = gcc-c++") or system("CXX = devtoolset-8-gcc-c++") or so before calling the BiocManager command.

from universalmotif.

JianGuoZhou3 avatar JianGuoZhou3 commented on July 17, 2024

It's seems didn't work.


> system("CXX = gcc-c++") 
sh: CXX: command not found 
Warning message: In system("CXX = gcc-c++") : error in running command 
> system("CXX = devtoolset-8-gcc-c++") 
sh: CXX: command not found 
Warning message: In system("CXX = devtoolset-8-gcc-c++") : error in running command
--
 
> | >
>


from universalmotif.

bjmt avatar bjmt commented on July 17, 2024

You could try creating the folder ~/.R, and in it create a file ~/.R/Makevars. Then in the file, write:

CXX=/opt/rh/devtoolset-7/root/usr/bin/g++
CXX11=/opt/rh/devtoolset-7/root/usr/bin/g++

This should force R to use the new gcc you installed.

from universalmotif.

bjmt avatar bjmt commented on July 17, 2024

Sorry I didn't suggest this earlier, I only just now remembered about ~/.R/Makevars. Hopefully this works. And thanks a ton for popping tnagler, my apologies for calling you.

from universalmotif.

JianGuoZhou3 avatar JianGuoZhou3 commented on July 17, 2024

It's still didn't work.
image

from universalmotif.

JianGuoZhou3 avatar JianGuoZhou3 commented on July 17, 2024

Hi @tnagler I used the code and worked.

Sys.setenv("PATH"="/opt/rh/devtoolset-8/root/usr/bin:/opt/rh/devtoolset-8/root/usr/bin")
> Sys.which("R")
 R 
"" 
> Sys.which("r")
 r 
"" 
Restarting R session...

from universalmotif.

Related Issues (18)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.