ドキュメンテーション センター

  • 評価版
  • 製品アップデート

目次

このページは前リリースの情報です。該当の英語のページはこのリリースで更新されています。このリリースの英語のドキュメンテーションを参照するには、言語設定を United States に変更してください。

MAT ファイル プログラムのコンパイルおよびリンク

UNIX オペレーティング システム上のビルド

UNIX® オペレーティング システムでビルドするには、「実行時ライブラリ パスの設定」と「オプション ファイルの使用」を参照してください。

実行時ライブラリ パスの設定

実行時に環境変数を設定して、UNIX オペレーティング システムに対し、API 共有ライブラリが置かれている場所を指定しなければなりません。使用する UNIX コマンドと指定する値は、シェルおよびシステム アーキテクチャによって異なります。次の表は、環境変数の名前 (envvar) と、それに割り当てる値 (pathspec) の一覧です。matlabroot は、MATLAB® がインストールされているルート フォルダーを示します。

オペレーティング システムenvvarpathspec

64 ビット版 Linux®

LD_LIBRARY_PATH

matlabroot/bin/glnxa64: matlabroot/sys/os/glnxa64

64 ビット版 Apple Macintosh (Intel®)

DYLD_LIBRARY_PATH

matlabroot/bin/maci64: matlabroot/sys/os/maci64

C シェルの使用-  次のコマンドを使用してライブラリ パスを設定します。

setenv envvar pathspec

envvar および pathspec を表の対応する値に置き換えてください。たとえば、Macintosh システムでは以下を使用します。

setenv DYLD_LIBRARY_PATH
matlabroot/bin/maci64:matlabroot/sys/os/maci64

これらのコマンドを ~/.cshrc などのスタートアップ スクリプトに入れることができます。

ボーン シェルの使用-  次のコマンドを使用してライブラリ パスを設定します。

envvar = pathspec:envvar
export envvar

envvar および pathspec という語を表の適切な値に置き換えてください。たとえば、Macintosh システムでは以下を使用します。

DYLD_LIBRARY_PATH=matlabroot/bin/maci64:matlabroot/sys/os/maci64:$DYLD_LIBRARY_PATH
export DYLD_LIBRARY_PATH 

これらのコマンドを ~/.profile などのスタートアップ スクリプトに入れることができます。

オプション ファイルの使用

UNIX システム用の MATLAB オプション ファイル、matopts.sh により、mex スクリプトを使用した、MAT ファイル アプリケーションの簡単なコンパイルおよびリンクが可能になります。オプション ファイルは matlabroot/bin にあります。-f スイッチを使用して、オプション ファイルの名前と場所を指定します。

たとえば、matcreat.c の例をコンパイルしてリンクするには、まずパス上にある書き込み可能なフォルダーにファイルをコピーします。

copyfile(fullfile(matlabroot, 'extern', 'examples', 'eng_mat', ...
  'matcreat.c'), '.', 'f');

次のコマンドを使用して、それをビルドします。

mex('-v', '-f', [matlabroot '/bin/matopts.sh'], 'matcreat.c')

特定のコンパイラまたはプラットフォームのオプション ファイルを変更する必要がある場合は、-v スイッチを使用して、現在のコンパイラとリンカーの設定を表示します。その後、matopts.sh ファイルのローカル コピーで適切な変更を行います。

Windows オペレーティング システムでのビルド

MAT ファイル プログラムをコンパイルしてリンクするには、MAT オプション ファイルと共に mex スクリプトを使用します。-f スイッチを使用して、オプション ファイルの名前と場所を指定します。サポートされているコンパイラとオペレーティング システムによってオプション ファイルが異なります。次の表を参照してください。

オペレーティング システム既定のオプション ファイル

32 ビット版 Windows®

matlabroot\bin\win32\mexopts\*engmatopts.bat

64 ビット版 Windows

matlabroot\bin\win64\mexopts\*engmatopts.bat

ファイル名 *engmatopts.bat* 文字は、コンパイラのタイプとバージョンを表します。たとえば、Microsoft® Visual C++® Version 9.0 コンパイラと共に使用するオプション ファイルは msvc90engmatopts.bat です。このコンパイラを使用して matcreat.c アプリケーションをビルドするには、まずパス上にある c:\work などの書き込み可能なフォルダーにファイルをコピーします。

copyfile(fullfile(matlabroot, 'extern', 'examples', 'eng_mat', ...
  'matcreat.c'), fullfile('c:', 'work'));

次のコマンドを使用してビルドします。

mex('-v', '-f', [matlabroot ...
   '\bin\win32\mexopts\msvc90engmatopts.bat'], ...
   'matcreat.c');

特定のコンパイラのオプション ファイルを変更する必要がある場合は、-v スイッチを使用して、現在のコンパイラとリンカーの設定を表示します。その後、オプション ファイルのローカル コピーで適切な変更を行います。

MAT ファイル アプリケーションの配布

MATLAB では、MAT ファイル アプリケーションのビルドに以下のデータとライブラリ ファイルが必要です。またこれらのファイルは、他のシステムに配布する MAT ファイル アプリケーションと共に配布しなければなりません。

サードパーティのデータ ファイル

自システムで MAT ファイル アプリケーションをビルドしたり他のシステムに MAT ファイル アプリケーションを配布したりする場合、適切な Unicode® データ ファイルが matlabroot/bin/arch フォルダーに入っていることを確認します。 MATLAB はこのファイルを使用して、Unicode エンコードをサポートします。ビッグエンディアン方式でバイトを順序付けるシステムでは、icudt40b.dat を使用します。リトルエンディアン方式でバイトを順序付けるシステムでは、icudt40l.dat を使用します。

配布されたアプリケーションについて、matlabroot/bin/ フォルダーから MATLAB lcdata.xml ファイルを、またスタンドアロン プログラムでは matlabroot/resources/MATLAB/ フォルダーから、必ず配布してください。

サードパーティ ライブラリ

自システムで MAT ファイル アプリケーションをビルドしたり他のシステムに MAT ファイル アプリケーションを配布したりする場合、適切なライブラリが matlabroot/bin/arch フォルダーにインストールされていることを確認してください。

オペレーティング システム別のライブラリ ファイル名

WindowsLinuxMacintosh (Intel)
libmat.dlllibmat.solibmat.dylib
libmx.dlllibmx.solibmx.dylib

これらのライブラリ以外の libmat が要求するサードパーティ ライブラリ ファイルはすべて必要です。MATLAB は、これらの追加のライブラリを使用して、MAT ファイルの Unicode 文字エンコードとデータ圧縮をサポートします。これらのライブラリ ファイルは、libmx と同じフォルダーになければなりません。以下の表に示すプラットフォーム別の方法によりライブラリを確認してください。

ライブラリ依存コマンド

WindowsLinuxMacintosh

Dependency Walker を使用

ldd -d libmat.sootool -L libmat.dylib

Dependency Walker-  Windows システム上のライブラリ依存関係の検索には、サードパーティ製品である Dependency Walker を使用します。Dependency Walker は、32 ビットまたは 64 ビット版の Windows モジュールをスキャンして、すべての依存モジュールの階層ツリー ダイアグラムをビルドする無料のユーティリティです。検出されたモジュールごとに、そのモジュールによってエクスポートされるすべての関数と、それらの関数のうち他のモジュールによって呼び出されるものがリストされます。Dependency Walker ユーティリティを以下の Web サイトからダウンロードします。

http://www.dependencywalker.com/

Dependency Walker の使用方法は、テクニカル サポート ソリューション「1-2RQL4L」(http://www.mathworks.co.jp/support/solutions/data/1-2RQL4L.html) を参照してください。

ファイル matlabroot/bin/win32/libmat.dll または matlabroot/bin/win64/libmat.dllDepends ウィンドウにドラッグ アンド ドロップします。

この情報は役に立ちましたか?