hello 优快云(20210406

博客内容提及了一个在使用R编程时遇到的`compileCode`错误,具体表现为多个定义的boost数学库函数冲突。解决方案是重启R环境并重新源码安装rstan和StanHeaders包。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

rstan问题汇总

compileCode error

报错显示为:

Error in compileCode(f, code, language = language, verbose = verbose) :
C:/rtools40/mingw64/bin/…/lib/gcc/x86_64-w64-mingw32/8.3.0/…/…/…/…/x86_64-w64-mingw32/bin/ld.exe: C:/Program Files/R/R-4.0.3/library/rstan/lib/x64/libStanServices.a(stan_fit.o):stan_fit.cpp:(.rdata Z Z N 5 b o o s t 4 m a t h 6 d e t a i l 9 b e s s e l j 0 I e E E T S 3 E 2 P 1 [ Z Z N 5 b o o s t 4 m a t h 6 d e t a i l 9 b e s s e l j 0 I e E E T S 3 E 2 P 1 ] + 0 x 0 ) : m u l t i p l e d e f i n i t i o n o f ‘ b o o s t : : m a t h : : d e t a i l : : b e s s e l j 0 < l o n g d o u b l e > ( l o n g d o u b l e ) : : P 1 ′ ; f i l e 1 d a 012 a 9 c f . o : f i l e 1 d a 012 a 9 c f . c p p : ( . d a t a _ZZN5boost4math6detail9bessel_j0IeEET_S3_E2P1[_ZZN5boost4math6detail9bessel_j0IeEET_S3_E2P1]+0x0): multiple definition of `boost::math::detail::bessel_j0<long double>(long double)::P1'; file1da012a9cf.o:file1da012a9cf.cpp:(.data ZZN5boost4math6detail9besselj0IeEETS3E2P1[ZZN5boost4math6detail9besselj0IeEETS3E2P1]+0x0):multipledefinitionofboost::math::detail::besselj0<longdouble>(longdouble)::P1;file1da012a9cf.o:file1da012a9cf.cpp:(.data_ZZN5boost4math6detail9bessel_j0IeEET_S3_E2P1[_ZZN5boost4math6detail9bessel_j0IeEET_S3_E2P1]+0x0): first defined hereC:/rtools40/mingw64/bin/…/lib/gcc/x86_64-w64-mingw32/8.3.0/…/…/…/…/x86_64-w64-mingw32/bin/ld.exe: C:/Program Files/R/R-4.0.3/library/rstan/lib/x64/libStanServices.a(stan_fit.o):stan_fit.cpp:(.rdata Z Z N 5 b o o s t 4 m a t h 6 d e t a i l 9 b e s s e l j 0 I e E E T S 3 E 2 Q C [ Z Z N 5 b o o s t 4 m a t h 6 d e t a i l 9 b e s s e l j 0 I e E E T S 3 E 2 Q C ] + 0 x 0 ) : m u l t i p l e d e f i n i t i o n o f ‘ b o o s t : : m a t h : : d e t a i l : : b e s s e l j 0 < l o n g d o u b l e > ( l o n g d o u b l e ) : : Q C ′ ; f i l e 1 d a 012 a 9 c f . o : f i l e 1 d a 012 a 9 c f . c p p : ( . d a t a _ZZN5boost4math6detail9bessel_j0IeEET_S3_E2QC[_ZZN5boost4math6detail9bessel_j0IeEET_S3_E2QC]+0x0): multiple definition of `boost::math::detail::bessel_j0<long double>(long double)::QC'; file1da012a9cf.o:file1da012a9cf.cpp:(.data ZZN5boost4math6detail9besselj0IeEETS3E2QC[ZZN5boost4math6detail9besselj0IeEETS3E2QC]+0x0):multipledefinitionofboost::math::detail::besselj0<longdouble>(longdouble)::QC;file1da012a9cf.o:file1da012a9cf.cpp:(.data_ZZN5boos

注意其中关键字为multiple definition of***处理方式为:
Then restart R and reinstall rstan and StanHeaders from source:

Sys.setenv(MAKEFLAGS = paste0("-j",parallel::detectCores()))
install.packages(c("StanHeaders","rstan"),type="source")

即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值