2016-08-14 1 views
5

저는 사무실의 데스크톱 컴퓨터의 R 프로젝트에서 당분간 일했지만 여행 중에는 스크립트를 가지고 있어야합니다. 랩톱에 모든 것을 복사하고 코드를 약간 변경했습니다. (내 데스크탑 컴퓨터에 사용 된 동일한 절차에 따라) 컴파일하려면, 다음과 같은 오류를 시도 할 때 아아, :R : dyn.load의 오류 (파일, DLL 경로 = DLL 경로, ...)

$ R CMD INSTALL --no-multiarch --with-keep.source coala 
* installing to library ‘/home/my_pc/R/x86_64-pc-linux-gnu-library/3.3’ 
* installing *source* package ‘coala’ ... 
** libs 
make: Nothing to be done for `all'. 
installing to /home/my_pc/R/x86_64-pc-linux-gnu-library/3.3/coala/libs 
** R 
** inst 
** preparing package for lazy loading 
** help 
*** installing help indices 
** building package indices 
** installing vignettes 
** testing if installed package can be loaded 
Error in dyn.load(file, DLLpath = DLLpath, ...) : 
unable to load shared object '/home/my_pc/R/x86_64-pc-linux-gnu-library/3.3/coala/libs/coala.so': 
/home/my_pc/R/x86_64-pc-linux-gnu-library/3.3/coala/libs/coala.so: undefined symbol: _ZSt24__throw_out_of_range_fmtPKcz 
Error: loading failed 
Execution halted 
ERROR: loading failed 
* removing ‘/home/my_pc/R/x86_64-pc-linux-gnu-library/3.3/coala’ 
* restoring previous ‘/home/my_pc/R/x86_64-pc-linux-gnu-library/3.3/coala’ 

두 컴퓨터는 동일한 우분투하지만 서로 다른 R 버전이있다. 또한, 나는 동시에 두 개의 라이브러리에서 작업 중이며 문제가없는 라이브러리를 함께 업데이트하므로이 오류 메시지가 더 혼란 스럽다는 것을 언급해야합니다. 이 질문과 관련이있을 수 있습니다 답변을 확인했지만, 자신의 솔루션을 적용하는 방법을 알아낼 수 없습니다 :이 문제를 해결하는 방법이

R: error installing packages UBUNTU - Error in dyn.load(file, DLLpath = DLLpath, ...) : unable to load shared object Got message unable to load shared object stats.so when R starts

있습니까? 어떤 원인 일 수 있습니까? 정의되지 않은 기호 _ZSt24__throw_out_of_range_fmtPKcz은 무엇입니까?

+0

비슷한 문제가 여기에 있습니다. 해결책 발견 : https://github.com/Rdatatable/data.table/issues/2055 –

답변

0

출력으로 제공하는 .libPaths()은 무엇입니까?

오늘 최신 업데이트 (R 3.3.1 for MacOS X)를 사용하여 동일한 문제가 발생했습니다. 내 R 설치가 업데이트 된 후 충돌하는 것 같았습니다.

0

문제는 당신 g ++ 다음 stdlib와 연계입니다 ...이 도움이

rm -rf /Users/johann/Library/R/3.3/library 
sudo rm -rf Library/Frameworks/R.framework/Versions/3.3/Resources/library 

희망 : 내 솔루션은 파일 시스템에서 LIB 디렉토리를 제거하고 R을 다시 설치 간단했다. 다른 버전의 우분투에는 다른 버전의 g ++ stdlib가 있습니다. 항상 바이너리를 하나에서 다른 것으로 복사 할 수 없습니다.

랩톱의 경우 R을 다시 컴파일하거나 Ubuntu R 패키지를 사용하여이 문제를 해결할 수 있습니다. 예 : http://packages.ubuntu.com/xenial/r-base