web-dev-qa-db-ja.com

OS Xパッケージのインストールはgfortran-4.8に依存します

OS X開発版のRを使用しています

R Under development (unstable) (2014-05-27 r65787)
Platform: x86_64-Apple-darwin13.1.0 (64-bit)

with GNU Fortran(GCC)4.2.3(from Simon's site )およびXcodeのコマンドラインツールのバージョン5.1.1。

ソースからビルドすると、次のようなエラーが表示されます。

gfortran-4.8   -fPIC  -g -O2  -c altmov.f -o altmov.o
make: gfortran-4.8: No such file or directory

ここで何をすべきかわかりません。持っているバージョンのエイリアスを作成できましたが、本当に4.8が必要かどうかはわかりません。

おかげで、

マックス

44
topepo

端末に次の2行を直接引用して入力します。

curl -O http://r.research.att.com/libs/gfortran-4.8.2-darwin13.tar.bz2
Sudo tar fvxj gfortran-4.8.2-darwin13.tar.bz2 -C /

Mavericks用のgfortran(現時点ではシステムにない)がダウンロードされ、システムにインストールされます。少なくとも、これは私にとって同じ問題を解決しました

(2011年後半にMacPro、Mavericksを実行しています)。

51
TheBigMike

編集:これはHomebrewを使用して達成するのが最適だと思う:

brew reinstall gcc48 --with-fortran

次の手順はうまくいくと思いますが、それほどきれいではありません。ただし、以下で説明するように〜/ .R/Makevarsを構成することをお勧めします。

@TheBigMikeの回答を基に、次の手順を使用してgfortran-4.8をhomebrewとともにインストールし、Rを構成してこのfortranコンパイラーを選択しました。

まず、gfortran 4.8をダウンロードして解凍します。

su admin
curl -O http://r.research.att.com/libs/gfortran-4.8.2-darwin13.tar.bz2
mkdir /tmp/gfortran
tar fvxz gfortran-4.8.2-darwin13.tar.bz2 -C /tmp/gfortran

Homebrewを妨げるgfortranファイルエイリアスを削除します。

rm /tmp/gfortran/usr/local/bin/gfortran

Gfortran 4.8をインストールする

cp -r /tmp/gfortran/usr/local/ /usr/local

Rにgfortran 4.8を使用するように指示するには、~/.R/Makevarsというファイルを作成します。

mkdir -p ~/.R
touch ~/.R/Makevars

以下を~/.R/Makevarsに入れます:

FLIBS=""
F77="gfortran-4.8"
FC="gfortran-4.8"

Rを再起動します。Rを再起動すると、fortran 4.8に依存するすべてのパッケージが動作するようになります。自作は邪魔されてはいけません。

17

R Studioでも、同じ問題に遭遇しました。以下がうまくいきましたが、すべてのRパッケージを再インストールする必要がありました(注:再インストールにはしばらく時間がかかり、かなり進行中のようです。

最新のR Studioバージョンをダウンロードし、ターミナルで次のようにします:brew install gcc brew update && brew reinstall r brew link --overwrite r

9
grantog

これは Rcpp FAQ のセクション2.16で詳しく説明されています。基本的に、gfortranをインストール(homebrew install gccまたはその他の方法)し、Makeconfを変更して、FLIBSが関連するfortranライブラリを指すようにする必要があります。

これらは私のために働いたステップでした:

  1. Homebrew経由でgcc48をインストールする

  2. Gfortranおよびgfortran-4.8が新しくインストールされたバージョンを指していることを確認してください。

  3. /Library/Frameworks/R.framework/Resources/etc/MakeconfFLIBS変数にコメントを付けます。

ステップ3は、@ TheBigMikeが提案した方法でインストールされたgfortranで動作するように設計されているため、最も重要なステップでした。つまり、アーカイブgfortran-4.8.2-darwin13.tar.bz2をダウンロードして抽出します。

4
mpiktas

OSX High SierraおよびRStudio 1.1.423で次のことがうまくいきました。

  1. Homebrew経由でgcc/gfortranをインストールします:brew install gcc
  2. /Library/Frameworks/R.framework/Resources/etc/Makeconfを編集し、gfortran-4.8のすべてのインスタンスをgfortranに置き換えます
  3. また、FLIBS = -L/usr/local/lib/gcc/x86_64-Apple-darwin13.0.0/4.8.2FLIBS = -L/usr/local/lib/gcc/7/ -lgfortran -lquadmath -lmに置き換えます。
  4. パッケージのインストールを再試行します。
3
  1. Homebrew経由でgcc/gfortranをインストールします:brew install gcc
  2. 交換は自動的に行われないようにしてください:/Library/Frameworks/R.framework/Resources/etc/Makeconfおよびgfortran-4.8(または任意の数)のすべてのインスタンスをgfortranに置き換えます
  3. 置換FLIBS = -L/usr/local/gfortran/lib/gcc/x86_64-Apple-darwin15/6.1.0 -L/usr/local/gfortran/lib -lgfortran -lquadmath -lmからFLIBS = -L/usr/local/lib/gcc/7/ -lgfortran -lquadmath -lm
  4. パッケージを再インストールするのは、robustbaseライブラリで必要なfpcでした
1
dguardia

同じ問題に取り組み、R cranサイトでステートメントを見つけました( https://cran.ism.ac.jp/ )High Sierraなどの最新のOSXでは、いくつかの必要なライブラリが含まれておらず、これらをインストールする必要があります。このページは、引用して親切に説明しています

重要:このリリースでは、Clang 6.0.0およびGNU Fortran 6.1、どちらもAppleから提供されていません。ソースからRパッケージをコンパイルする場合は、これらのツールをダウンロードしてインストールする必要があります。 - tools ディレクトリを参照してください。

次の2つのパッケージを適用することで問題を解決しました(gfortranが見つからないなど) here。

  1. clang-6.0.0.pkg(OS X 10.11+、署名済み、64ビット)MD5-hash:c29700c4e7b2914073ef7e741eb105bc(約418Mb)
  2. gfortran-6.1.pkg(OS X 10.11+、署名済み、64ビット)MD5-hash:201026216e8b373d9cd2efc0cc474bb8(約73Mb)
1
Tsuney

RStudioの更新バージョン(バージョン0.98.1091)は、これを修正するようです。

0
Brian Mac Namee