R语言的绝大部分包都是全平台通用,Linux是源码编译,macOS和Windows的系统没有Linux那么多发行版,环境比较固定,因此有预编译的zip文件可以下载。
但是有一些R包就真的是Windows根本搞不定的,举个例子Rsubread
由于只有源代码,所以必须要编译。
报错1当我安装了Rtools, 他询问是否要编译时,我以为我能够顺利安装了。
编译提示但是并没有,紧接着就给我报另外一个错误,缺少一个头文件。
报错2经过检索发现, sys/resource.h
是POSIX系统特有的文件,Rtools用于编译的MinGW并非是完美移植,因此缺少该文件,也无法使用该文件。因此Rsubread
目前无法在Windows的R里安装。
考虑Rsubread
是比对工具,是上游分析的一步,一般在linux服务器上进行。所以其实也不需要强求安装这个R包.
总结一下:遇到报错为sys/resource.h
就不要挣扎想去解决这个问题,不如在Windows10中装一个子系统。