Ubuntu 16.04 LTS安装R包Rwofost遇编译错误求助
解决Ubuntu 16.04 LTS上安装Rwofost包的编译错误
这个R_interface_util.h: No such file or directory的错误很常见,本质是编译Rwofost时找不到WOFOST模型的核心头文件——因为Rwofost依赖WOFOST的源码组件,而默认的CRAN安装或者普通GitHub克隆可能没拉取到这些依赖文件。下面是经过验证的解决步骤:
步骤1:安装系统编译依赖
首先确保你的Ubuntu系统有编译R包所需的基础工具,打开终端运行:
sudo apt-get update && sudo apt-get install build-essential r-base-dev libcurl4-openssl-dev libssl-dev libxml2-dev
这些包会提供编译C++代码、连接网络以及处理XML所需的工具,避免后续出现其他依赖缺失问题。
步骤2:通过GitHub递归克隆源码并安装
Rwofost的GitHub仓库包含WOFOST源码作为子模块,直接用devtools::install_github可能不会自动拉取子模块,导致缺少头文件。我们手动克隆并安装:
- 先在R中安装
devtools(如果还没装):
install.packages("devtools")
- 回到终端,递归克隆Rwofost的仓库(确保拉取所有子模块):
git clone --recursive https://github.com/ebimodeling/Rwofost.git
- 进入克隆好的目录,用devtools本地安装:
cd Rwofost Rscript -e "devtools::install_local('.')"
备选方案:安装兼容旧版R的Rwofost版本
你的R版本是3.4.x(对应Ubuntu 16.04的默认R),如果最新版Rwofost不兼容,你可以安装一个适配旧版R的稳定版本:
- 克隆指定tag的版本(比如v0.1.0,这个版本适配R 3.4):
git clone --recursive -b v0.1.0 https://github.com/ebimodeling/Rwofost.git
- 同样进入目录后本地安装:
cd Rwofost Rscript -e "devtools::install_local('.')"
完成这些步骤后,应该就能成功安装Rwofost包了,不会再出现头文件缺失的编译错误。
内容的提问来源于stack exchange,提问作者MYaseen208
相关产品推荐
相关产品推荐

