web-dev-qa-db-ja.com

最新のMACOSXアップデート後のOctaveでのプロット

こんにちは私は最近、最新のユキヒョウのアップデートをダウンロードしました。次に、コンピューターに数か月間インストールされているOctaveを使用して何かをプロットしようとしました(そして、プロットはずっと機能していました)更新プログラムをインストールしてから、octaveを使用してプロットしようとすると、次のエラーが発生します。

dyld: Library not loaded: /usr/X11/lib/libfreetype.6.dylib
  Referenced from: /usr/X11R6/lib/libfontconfig.1.dylib
  Reason: Incompatible library version: libfontconfig.1.dylib requires version 13.0.0 or later, but libfreetype.6.dylib provides version 10.0.0
dyld: Library not loaded: /usr/X11/lib/libfreetype.6.dylib
  Referenced from: /usr/X11R6/lib/libfontconfig.1.dylib
  Reason: Incompatible library version: libfontconfig.1.dylib requires version 13.0.0 or later, but libfreetype.6.dylib provides version 10.0.0
/Applications/Gnuplot.app/Contents/Resources/bin/gnuplot: line 71:   865 Trace/BPT trap          GNUTERM="${GNUTERM}" GNUPLOT_HOME="${GNUPLOT_HOME}" PATH="${PATH}" DYLD_LIBRARY_PATH="${DYLD_LIBRARY_PATH}" HOME="${HOME}" GNUHELP="${GNUHELP}" DYLD_FRAMEWORK_PATH="${DYLD_FRAMEWORK_PATH}" GNUPLOT_PS_DIR="${GNUPLOT_PS_DIR}" DISPLAY="${DISPLAY}" GNUPLOT_DRIVER_DIR="${GNUPLOT_DRIVER_DIR}" "${ROOT}/bin/gnuplot-4.2.6" "$@"
/Applications/Gnuplot.app/Contents/Resources/bin/gnuplot: line 71:   871 Trace/BPT trap          GNUTERM="${GNUTERM}" GNUPLOT_HOME="${GNUPLOT_HOME}" PATH="${PATH}" DYLD_LIBRARY_PATH="${DYLD_LIBRARY_PATH}" HOME="${HOME}" GNUHELP="${GNUHELP}" DYLD_FRAMEWORK_PATH="${DYLD_FRAMEWORK_PATH}" GNUPLOT_PS_DIR="${GNUPLOT_PS_DIR}" DISPLAY="${DISPLAY}" GNUPLOT_DRIVER_DIR="${GNUPLOT_DRIVER_DIR}" "${ROOT}/bin/gnuplot-4.2.6" "$@"
error: you must have gnuplot installed to display graphics; if you have gnuplot installed in a non-standard location, see the 'gnuplot_binary' function

どうしたらいいのかよくわかりません。私はここで私のリーグから抜け出しました。

27
Clark

http://octave.sourceforge.net/ のMac OS X10.6のユーザー向けのメモを参照してください。この変更により、10.5.8でも問題が解決します。

9
j08lue

「MacOSXユーザー向けのメモ」はOctaveホームページに表示されなくなり、Marcoの投稿に記載されている回避策も機能しませんでしたが、次のようになりました。

Open /Applications/Gnuplot.app/Contents/Resources/bin/gnuplot in a text
editor. Use the editor search-and-replace feature to replace
"DYLD_LIBRARY_PATH" with "DYLD_FALLBACK_LIBRARY_PATH". There are four
instances that need to be replaced.

これは、Octave MacOSXバイナリの readme からのものです。これはLionユーザー向けであると書かれていますが、私は10.6.8を実行していて、うまくいきました。

78
j kan

私は最近、自作を使用してLionでOctaveとGNUplotを構築しました。うまくいくようです。ここにいくつかのメモがあります

1)AppStoreとHomeBrewからXcodeをインストールします( http://mxcl.github.com/homebrew/ を参照)

2)「brewinstalloctave」を実行し、graphicsmagickのコンパイルに失敗するまで待ちます

3)コマンド「brewinstall --use-clang--HEADgraphicsmagick」を実行します。 Mercurialのインストールを求められる場合があります。指示に従ってください。また、Fortranのインストールを求められる場合があるため、「brewinstallgfortran」

4)コマンド「brewinstalloctave」を再度実行します

5) Aquatermのインストール

6)「brewinstallgnuplot」を実行します

これで、最新のOctaveがインストールされました。ターミナルからオクターブを入力するだけです

インストールをテストするには、Octaveコマンドプロンプトで次のコマンドを実行します

setenv("GNUTERM", "x11");
x = linspace(-10, 10, 100);
y = sin(x);
plot(x,y);
17
Alec the Geek

OSX 10.6.5でfreetypeを更新しましたが、freetypeに対してリンクするfontconfigは、この新しいバージョンを必要としています。開発者がDYLD_LIBRARY_PATHを設定しているため、Gnuplotの読み込みに失敗しています。これにより、libfontconfigはlibfreetypeの使用を強制されますが、これはできません。

これはGnuplot.appのバグです...開発者は[〜#〜] never [〜#〜]製品の出荷時にDYLD_LIBRARY_PATHを設定する必要があります!

5

私も同じ問題を抱えていて、「Mac OSX10.6のユーザー向けのメモ」を見つけるのに少し時間がかかりました。私はそれらをここにコピーします:

ユキヒョウのユーザーへの注意

1-mkoctfile

OSX 10.6以降、Apple出荷バージョンのgccビルドはデフォルトで64ビットバイナリです。Octave.appバージョン3.2.3に含まれるライブラリは32ビットであるため、mkoctfileをに適用するには、次のパッチを適用する必要があります。作業:

1.1)Finderで/ Applicationsフォルダを開きます1.2)Octave.appを右クリックし、[パッケージの内容を表示]を選択します1.3)/Applications/Octave.app/Contents/Resources/binに移動します1.4)ファイルを右クリックします「mkoctfile」を選択し、次の行の直後に「Open with-> Other ...-> TextEdit.app」を選択します。1.5)行の直後:

 # along with this program; If not, see <http://www.gnu.org/licenses/>.

行を追加します

 CFLAGS="-m32 ${CFLAGS}"
 FFLAGS="-m32 ${FFLAGS}"
 CPPFLAGS="-m32 ${CPPFLAGS}"
 CXXFLAGS="-m32 ${CXXFLAGS}"
 LDFLAGS="-m32 ${LDFLAGS}" 

と保存します。

2-Gnuplot.app

OSX 10.6.5で導入されたシステムライブラリのアップデートにより、Octave.appディストリビューションに含まれているGnuplot.appの機能が壊れました。OSX10.6.5以降でGnuplot.appを使用するには、以下に説明する修正を使用できます。 :

2.1)Finderで/ Applicationsフォルダを開きます2.2)Gnuplot.appを右クリックし、[パッケージの内容を表示]を選択します2.3)/Applications/Gnuplot.app/Contents/Resources/binに移動します2.4)ファイルを右クリックします「gnuplot」を選択し、「Open with-> Other ...-> TextEdit.app」を選択します。2.5)行を変更します。

 DYLD_LIBRARY_PATH="${ROOT}/lib:${DYLD_LIBRARY_PATH}"

 DYLD_LIBRARY_PATH="${ROOT}/lib"

と保存します。

LEOPARDユーザー向けの注意事項

OSX 10.5.8で導入されたシステムライブラリのアップデートにより、Octave.appディストリビューションに含まれているGnuplot.appの機能が壊れました。OSX10.5.8以降でGnuplot.appを使用するには、説明したのと同じ修正を使用できます。上記のOSX10.6.5の場合。

1
Marco Huertas

私は上記を試しましたが、役に立ちませんでした。問題の原因は、Octave.appのインストールに付属しているgnuplotのバージョンのようです。

'brew'を使用してgnuplotを直接インストールしてから、Applicationsフォルダーからgnuplotを削除しました。その変更が行われると、Octaveは正しい依存関係でコンパイルされたgnuplotの新しいバージョンを見つけることができました。

1
Brennan Cheung

MacPortsを使用してもかまわない場合は、次のコマンドでオクターブをインストールできます。そしてそれは64ビットバージョンになります。

Sudo port install octave-devel
1
Wei Liu

「DYLD_LIBRARY_PATH」の4つのインスタンスを「DYLD_FALLBACK_LIBRARY_PATH」に置き換えても、Mac OS X10.9では機能しませんでした。

ただし、ここで指定されている2番目のオプション: http://sourceforge.net/projects/octave/files/Octave%20MacOSX%20Binary/2011-04-21%20binary%20of%20Octave%203.4.0/ ==

動作しました。つまり、MaximaDMGにバンドルされているGnuplot-4.2.6を使用します。以下のリンク。 http://sourceforge.net/projects/maxima/files/Maxima-MacOS/5.26.0-MacOSX/

Gnuplot.appを/ Applicationsにコピーしました。

0
Snowcrash

Mountain Lionsは、dmgを使用してOctave 3.4.0をインストールし、Maximadmgから代わりに古い4.2gnuplotを投入することもできます。最も簡単ですが、最新バージョンではありません。 (うまくいったクラスメートのアイデア。)

0
Elaine Morrison

この問題に関する私の経験を共有したいと思います。

今日、Mac OS X(10.7.5、Lion)でOctave/Gnuplotを使おうとしたときに同様の問題が発生しましたが、上記の解決策はどれもうまくいきませんでした。

しかし、私はうまくいった別の解決策を見つけました。それは https://github.com/jyr/MNPP/issues/28 で説明されています。基本的に、私は次のことをしました:

Sudo cp /usr/X11/lib/libfreetype.* /Applications/Gnuplot.app/Contents/Resources/lib
0
n3rd4n1