web-dev-qa-db-ja.com

R:dyn.load(file、DLLpath = DLLpath、...)のエラー

私はしばらくの間、オフィスのデスクトップコンピューターでRプロジェクトに取り組んできましたが、旅行中にスクリプトを携帯する必要があります。すべてをラップトップにコピーし、コードにいくつかの変更を加えました。悲しいかな、コンパイルしようとすると(デスクトップコンピューターで使用していたのとまったく同じ手順に従って)、次のエラーが発生しました。

$ 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’

両方のコンピューターのUbuntuは同じですが、Rバージョンが異なります。また、私は同時に2つのライブラリで作業していること、および付随するライブラリが問題なく更新されているため、このエラーメッセージはさらに不可解です。この質問に関連する可能性のある回答を確認しましたが、それらの解決策を適用する方法がわかりません。

R:パッケージのインストールエラーUBUNTU-dyn.load(file、DLLpath = DLLpath、...)のエラー:共有オブジェクトをロードできませんGotメッセージが共有オブジェクトのstats.soをロードできませんRが開始したとき

この問題を解決する方法はありますか?どちらが原因でしょうか?未定義のシンボルとは_ZSt24__throw_out_of_range_fmtPKcz

9
j91

Ubuntuのrgdalでも同様の問題がありました。パッケージを再インストールするだけで、再び機能するようになりました。

$ Sudo R
> install.packages("rgdal")
> quit()
$ exit
1
Luís de Sousa

.libPaths()は何を出力として提供していますか?

今日、最新のアップデートを使用して同じ問題が発生しました(MacOS XのR 3.3.1)。 Rのインストールは、アップデート後にクラッシュしたようです。私の解決策は、ファイルシステムからlibディレクトリを削除し、Rを再インストールすることでした。

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

お役に立てれば...

1
Johann Horvat

Mac/Linuxの場合

  1. 押す commandspace
  2. Terminalと入力し、Enterキーを押してターミナルを開きます。ターミナルにこの_open /Library/Frameworks/R.framework/Resources/library_を貼り付け、Enterキーを押します。 Finderウィンドウがたくさんのフォルダで開くはずです
  3. 各フォルダーは、インストールされているRパッケージと一致します。
  4. それらをすべて削除し、RStudioを閉じ、RStudioを再度開き、install.packages("dplyr")などを使用して必要なパッケージをインストールします。

私がこれをした後、問題は消えました

0
stevec

問題は、g ++ stdlibとのリンケージです。 Ubuntuのバージョンによって、g ++ stdlibのバージョンが異なります。常に一方から他方へバイナリをコピーすることはできません。

これを修正するには、ラップトップ用にRを再コンパイルするか、Ubuntu Rパッケージを使用します。例えば http://packages.ubuntu.com/xenial/r-base

0
John Vandenberg