Macにminicondaをインストールして、conda経由でRをインストールしてBioconductorのパッケージを使って色々解析しようとしてたんだけど、パッケージをインストールしようとすると、以下のようなエラーメッセージに悩まされるようになった。
-lboost_system -L/Users/xxxxx/miniconda3/envs/rnaseq/lib/R/lib -lR -Wl,-framework -Wl,CoreFoundation dyld[49404]: Symbol not found: __ZNK4tapi2v119LinkerInterfaceFile28getPlatformsAndMinDeploymentEv Referenced from: <565CE761-C1EB-37F5-9738-E1BCF6F2EC75> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld Expected in: <15C501C6-0EF4-3E32-9C14-04EC4CD23D35>
何が問題かというと、パッケージをconda経由でインストールしようとしたとき、リンカがOS側のライブラリにリンクできないらしい。MacのXcodeもコンパイラはclangではあるようなのだけど、何かシンボルテーブルの仕様がconda側でビルドした系と違うのかもしれない。
ということは、Condaで入れたR側の一切合切をMac側のライブラリに適合するようにビルドしなおすかしないといけないことになる。Xcodeを入れてRをビルドすればそれは可能なんだろうけど、なかなかめんどくさそう。
そのとき思い出したのは、Rの本家ではMac用のRのインストーラを配布していたということ。
実際上記のサイトからインストーラをダウンロードして、パッケージをインストールしなおしたら問題は解消した模様。この対策が一番手軽なのかな。