我正在尝试使用install.packages()
安装r包“ sparsesvd”,但是在编译过程中出错。非常感谢您的帮助!
“未知类型名称'R_CallMethodDef'”
我也尝试过conda install -c r r-sparsesvd
;但出现错误。
解决环境:失败
PackagesNotFoundError:以下软件包不可用 当前频道:
- r-sparsesvd
当前频道:
- https://conda.anaconda.org/r/linux-64
- https://conda.anaconda.org/r/noarch
- https://conda.anaconda.org/bioconda/linux-64
- https://conda.anaconda.org/bioconda/noarch
- https://conda.anaconda.org/conda-forge/linux-64
- https://conda.anaconda.org/conda-forge/noarch
- https://repo.anaconda.com/pkgs/r/linux-64
https://repo.anaconda.com/pkgs/r/noarch
...
我尝试了
conda skeleton cran --recursive r-sparsesvd
conda build r-sparsesvd
。
第一步成功,但构建失败。
执行停止 r-sparsesvd-0.1_4-r341h96ca727_0.tar.bz2测试失败
这是sessionInfo。由于项目原因,我必须使用R3.3
R版本3.3.2(2016-10-31)平台:x86_64-pc-linux-gnu(64位) 运行于:CentOS Linux 7(核心)
语言环境:[1] LC_CTYPE = en_US.UTF-8 LC_NUMERIC = C [3] LC_TIME = zh_CN.UTF-8 LC_COLLATE = zh_CN.UTF-8 [5] LC_MONETARY = zh_CN.UTF-8 LC_MESSAGES = zh_CN.UTF-8 [7] LC_PAPER = zh_CN.UTF-8 LC_NAME = C [9] LC_ADDRESS = C
LC_TELEPHONE = C [11] LC_MEASUREMENT = zh_CN.UTF-8 LC_IDENTIFICATION = C附加的基本软件包:[1]统计图形grDevices utils
数据集方法基础通过名称空间(未附加)加载:[1] tools_3.3.2
答案 0 :(得分:0)
这(再次)不是R,CRAN或其程序包的问题……但显然是Conda的问题。在我的系统上,这个 small 软件包几乎没有依赖关系,完全没有问题:
R> install.packages("sparsesvd")
Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)
trying URL 'https://cloud.r-project.org/src/contrib/sparsesvd_0.1-4.tar.gz'
Content type 'application/x-gzip' length 29729 bytes (29 KB)
==================================================
downloaded 29 KB
* installing *source* package ‘sparsesvd’ ...
** package ‘sparsesvd’ successfully unpacked and MD5 sums checked
** libs
gcc -I"/usr/share/R/include" -DNDEBUG -fpic -g -O3 -Wall -pipe -std=gnu99 -march=native -c las2.c -o las2.o
gcc -I"/usr/share/R/include" -DNDEBUG -fpic -g -O3 -Wall -pipe -std=gnu99 -march=native -c main.c -o main.o
gcc -I"/usr/share/R/include" -DNDEBUG -fpic -g -O3 -Wall -pipe -std=gnu99 -march=native -c svdlib.c -o svdlib.o
gcc -I"/usr/share/R/include" -DNDEBUG -fpic -g -O3 -Wall -pipe -std=gnu99 -march=native -c svdutil.c -o svdutil.o
svdutil.c: In function ‘svd_readBinFloat’:
svdutil.c:265:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
y = *((float *) &x);
^
svdutil.c: In function ‘svd_writeBinFloat’:
svdutil.c:290:3: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
int y = htonl(*((int *) &r));
^~~
gcc -Wl,-S -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -Wl,-z,relro -o sparsesvd.so las2.o main.o svdlib.o svdutil.o -L/usr/lib/R/lib -lR
installing to /usr/local/lib/R/site-library/sparsesvd/libs
** R
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
* DONE (sparsesvd)
The downloaded source packages are in
‘/tmp/RtmpI3TPWj/downloaded_packages’
R>