阿宅的学习工作日记 阿宅的学习工作日记
首页
  • 生信相关

    • 生信学习
  • 编程相关

    • R语言笔记
    • python笔记
  • linux拾遗
  • 云筏评测
  • 网站搭建
  • 读书笔记
  • 实用技巧
  • 友情链接
  • vuepress相关
  • 分类
  • 标签
  • 归档

Ivis Tang

阿宅本宅
首页
  • 生信相关

    • 生信学习
  • 编程相关

    • R语言笔记
    • python笔记
  • linux拾遗
  • 云筏评测
  • 网站搭建
  • 读书笔记
  • 实用技巧
  • 友情链接
  • vuepress相关
  • 分类
  • 标签
  • 归档
  • R语言的小技巧[持续更新]
  • 使用parallel包实现R语言并行
  • 使用R project来管理建造R项目并上传git
  • centos7安装rstan
    • windows版rstudio安装pandoc
    • 用R做主坐标分析-PCoA
    • R语言颜色表
    • circlize绘制基因组圈图的原理与使用
    • R语言简单处理pdf神器——qpdf包
    • R语言字符串类整理
    • R语言编程
    ivistang
    2020-02-25

    centos7安装rstan

    最近需要安装ggstatsplot这个包,里面需要安装metaBMA,然后metaBMA又依赖于rstan,于是安装rstan对我的折磨就开始了。以下内容将分享如何在centos7平台安装rstan。

    # 问题描述

    安装ggstatsplot时报错,提示metaBMA包安装失败,原因是rstan这个依赖包安装,基于官网trace结果是**caught segfault** address 0x20, cause 'memory not mapped'。装包怎么会有内存错误,开始以为是什么包之间有冲突,没当回事,可是仔细想想显然不可能,于是回过头看报错,发现问题主要在于rstan,rstan虽然安装成功但是编译stan程序会报错,用官网的8school案例测试,同样报错caught segfault。

    # 问题分析

    根据github官网上的描述和issue里的内容,问题应该出在编译Rcpp包的gcc版本与编译rstan的gcc版本不同。

    # 解决流程(包括安装rstan全过程)

    # 安装新版本gcc

    centos7的预装gcc版本为4.8.5,刚好不满足rstan的最低要求😓。以下为gcc-9.1.0安装流程(一下流程会覆盖gcc,谨慎操作):

    wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-9.1.0/gcc-9.1.0.tar.gz
    tar -xzvf gcc-9.1.0.tar.gz
    cd gcc-9.1.0
    ./contrib/download_prerequisites
    mkdir build
    cd build
    ../configure --prefix=/usr -enable-checking=release --enable--long-long--with-system-zlib -enable-languages=c,c++,fortran -disable-multilib
    # 这样安装会覆盖原有gcc
    make -j8
    make install
    ldconfig -v
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11

    # 安装Rcpp和rstan

    进入R,输入以下命令:

    dotR = file.path(Sys.getenv("HOME"), ".R")
    if (!file.exists(dotR)) dir.create(dotR)
    M = file.path(dotR, "Makevars")
    if (!file.exists(M)) file.create(M)
    cat("\nCXX14FLAGS=-O3 -march=native -mtune=native -fPIC", "CXX14=g++", file = M, sep = "\n", append = TRUE)
    install.packages("Rcpp") # 很重要,必须保持一致性编译
    Sys.setenv(MAKEFLAGS = "-j8")
    install.packages("rstan", type = "source")
    install.packages("ggstatsplot")
    
    1
    2
    3
    4
    5
    6
    7
    8
    9

    参考链接: https://github.com/stan-dev/rstan/wiki/Installing-RStan-on-Linux (opens new window) https://github.com/stan-dev/rstan/issues/728 (opens new window)

    #r#centos7
    上次更新: 2024/03/11, 23:50:27
    使用R project来管理建造R项目并上传git
    windows版rstudio安装pandoc

    ← 使用R project来管理建造R项目并上传git windows版rstudio安装pandoc→

    最近更新
    01
    如何挂载raw格式的虚拟机磁盘镜像
    12-18
    02
    《极简市场营销》读书笔记
    09-29
    03
    SNaQ进行系统发育网构建
    09-27
    更多文章>
    打赏我~
    主人忘记设置啦
    Copyright © 2019-2024 IvisTang | CC BY-SA 4.0 License
    沪ICP备20003858号-1 |
    已在风雨中度过
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式