首页 > 解决方案 > Ubuntu 20.04 上的 RcppEigen 安装失败:警告:忽略模板参数“__m128”上的属性

问题描述

我正在尝试安装各种库以使用 R 在 lme4 中完成 glmer 分析,包括:

安装这些软件包时出现各种错误,但已将其隔离为 RcppEigen 和我的 Linux 安装(Ubuntu Focal Fossa)的问题。我完全不知道如何解决这些错误以获得成功的构建,并希望对如何解决问题有一些想法。

任何帮助表示赞赏。

错误很广泛,所以这里有一个简短的片段,给出了问题的基本信息:

Installing package into ‘/home/useruser/R/x86_64-pc-linux-gnu-library/3.6’
(as ‘lib’ is unspecified)
trying URL 'https://cloud.r-project.org/src/contrib/RcppEigen_0.3.3.9.1.tar.gz'
Content type 'application/x-gzip' length 1633360 bytes (1.6 MB)
==================================================
downloaded 1.6 MB

* installing *source* package ‘RcppEigen’ ...
** package ‘RcppEigen’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
g++ -std=gnu++11 -I"/usr/share/R/include" -DNDEBUG   -I"/home/useruser/R/x86_64-pc-linux-gnu-library/3.6/Rcpp/include/"  -I"/home/useruser/R/x86_64-pc-linux-gnu-library/3.6/RcppEigen/include/"  -I"/home/useruser/R/x86_64-pc-linux-gnu-library/3.6/RcppEigen/include/unsupported"  -I"/home/useruser/R/x86_64-pc-linux-gnu-library/3.6/BH/include" -I"/home/useruser/R/x86_64-pc-linux-gnu-library/3.6/StanHeaders/include/src/"  -I"/home/useruser/R/x86_64-pc-linux-gnu-library/3.6/StanHeaders/include/"  -I"/home/useruser/R/x86_64-pc-linux-gnu-library/3.6/RcppParallel/include/"  -I"/home/useruser/R/x86_64-pc-linux-gnu-library/3.6/rstan/include" -DEIGEN_NO_DEBUG  -DBOOST_DISABLE_ASSERTS  -DBOOST_PENDING_INTEGER_LOG2_HPP  -DSTAN_THREADS  -DBOOST_NO_AUTO_PTR  -include '/home/useruser/R/x86_64-pc-linux-gnu-library/3.6/StanHeaders/include/stan/math/prim/mat/fun/Eigen.hpp'  -D_REENTRANT -DRCPP_PARALLEL_USE_TBB=1  -I"/home/useruser/R/x86_64-pc-linux-gnu-library/3.6/Rcpp/include"  -I../inst/include -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-jbaK_j/r-base-3.6.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c RcppEigen.cpp -o RcppEigen.o
In file included from ../inst/include/Eigen/Core:397,
                 from ../inst/include/Eigen/Dense:1,
                 from /home/useruser/R/x86_64-pc-linux-gnu-library/3.6/StanHeaders/include/stan/math/prim/mat/fun/Eigen.hpp:13,
                 from <command-line>:
../inst/include/Eigen/src/Core/arch/SSE/PacketMath.h:60:39: warning: ignoring attributes on template argument ‘__m128’ {aka ‘__vector(4) float’} [-Wignored-attributes]
   60 | template<> struct is_arithmetic<__m128>  { enum { value = true }; };
      |                                       ^
../inst/include/Eigen/src/Core/arch/SSE/PacketMath.h:61:40: warning: ignoring attributes on template argument ‘__m128i’ {aka ‘__vector(2) long long int’} [-Wignored-attributes]
   61 | template<> struct is_arithmetic<__m128i> { enum { value = true }; };
      |                                        ^
../inst/include/Eigen/src/Core/arch/SSE/PacketMath.h:62:40: warning: ignoring attributes on template argument ‘__m128d’ {aka ‘__vector(2) double’} [-Wignored-attributes]
   62 | template<> struct is_arithmetic<__m128d> { enum { value = true }; };
      |                                        ^
../inst/include/Eigen/src/Core/arch/SSE/PacketMath.h:161:43: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4f’ {aka ‘__vector(4) float’} [-Wignored-attributes]
  161 | template<> struct unpacket_traits<Packet4f> { typedef float  type; enum {size=4, alignment=Aligned16}; typedef Packet4f half; };
      |                                           ^
../inst/include/Eigen/src/Core/arch/SSE/PacketMath.h:162:43: warning: ignoring attributes on template argument ‘Eigen::internal::Packet2d’ {aka ‘__vector(2) double’} [-Wignored-attributes]
  162 | template<> struct unpacket_traits<Packet2d> { typedef double type; enum {size=2, alignment=Aligned16}; typedef Packet2d half; };
      |                                           ^
../inst/include/Eigen/src/Core/arch/SSE/PacketMath.h:163:43: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4i’ {aka ‘__vector(2) long long int’} [-Wignored-attributes]
  163 | template<> struct unpacket_traits<Packet4i> { typedef int    type; enum {size=4, alignment=Aligned16}; typedef Packet4i half; };
      |                                           ^
../inst/include/Eigen/src/Core/arch/SSE/PacketMath.h:718:35: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4f’ {aka ‘__vector(4) float’} [-Wignored-attributes]
  718 | struct palign_impl<Offset,Packet4f>
      |                                   ^
../inst/include/Eigen/src/Core/arch/SSE/PacketMath.h:741:35: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4i’ {aka ‘__vector(2) long long int’} [-Wignored-attributes]
  741 | struct palign_impl<Offset,Packet4i>

这是我的会话信息:

R version 3.6.3 (2020-02-29)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 20.04.2 LTS

Matrix products: default
BLAS:   /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.9.0
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.9.0

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8     LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                  LC_ADDRESS=C               LC_TELEPHONE=C             LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C    

标签: rlinuxrcpplme4ubuntu-20.04

解决方案


推荐阅读