Main Content

アップグレードしない場合どうなるか

MEX ソース コードを更新しない場合でも、-compatibleArrayDims オプションを使用して MEX ファイルをビルドすることができます。このフラグを使用して、MATLAB® のバージョン間で確実に望ましい動作になるようにします。-compatibleArrayDims フラグなしでビルドすると、以下の 1 つ以上が発生することがあります。

  • ネイティブ コンパイラからのコンパイラ警告やエラーの増加

  • ランタイム エラー

  • 間違った答

既存バイナリ MEX ファイルは実行可能ですか。

既存のバイナリ MEX ファイルは、64 ビット API で使用する場合、そのファイルをアップグレードせずに実行できます。ただし、非互換の問題により、既存の MEX ファイルの実行が妨げられることがあります。MEX ファイルが正しく実行されない場合、関連する MATLAB リリース ノートで mex を検索し、「互換性についての考慮事項」のトピックを確認してください。

ソース MEX ファイルを 64 ビット プラットフォームで更新しなければなりませんか。

MEX ファイルを 64 ビット プラットフォームでビルドする場合、またはプラットフォームに依存しないアプリケーションを記述する場合、MEX ファイルをアップグレードしなければなりません。"アップグレード" するには、ソース コードを見直し、適切な変更を行い、mex コマンドを使用してリビルドします。

必要とされるアクションは、MEX ファイルが現在 64 ビット API を使用しているかどうかにより異なります。以下の表に次に必要なアクションをまとめています。

ソース コードの状態次のアクション

コードの更新計画なし。

オプトアウトを選択したので、-compatibleArrayDims フラグを使用してビルドしなければなりません。しかし MATLAB の将来のバージョンでは、互換レイヤーは -compatibleArrayDims フラグとともにサポートされない可能性があります。

コードの更新を予定しています。どこから始めたらよいですか。

64 ビット API を使用するように MEX ファイルをアップグレードを参照してください。

MEX ファイルは使用しますが、ソース コードにはアクセスできません。

ソース コードの所有者に、64 ビット API を使用するように MEX ファイルをアップグレードの手順に従うよう依頼してください。

サードパーティ ライブラリを使用しています。

そのライブラリが 64 ビット インデックス付けをサポートしているか、ベンダーに問い合わせてください。サポートしていない場合、これらのライブラリは 64 ビット MEX ファイルの作成に使用できません。-compatibleArrayDims フラグを使用して MEX ファイルをビルドしてください。

そのライブラリが 64 ビット インデックス付けをサポートしている場合、ソース コードをチェックし、64 ビット API を使用するように MEX ファイルをアップグレードの手順に従いテストします。

前のリリースの際にコードを更新しました。

変更は必要ありません。ただし、MEX ファイルをビルドするときに -largeArrayDims オプションを使用する必要がなくなりました。

MEX ファイルでエラーが生成されます。

ソース コードから MEX ファイルを再コンパイルしなければなりません。-compatibleArrayDims フラグを使用しても問題が解決しない場合、ソース コードに非互換の問題がある可能性があります。非互換性の詳細については、既存バイナリ MEX ファイルは実行可能ですか。を参照してください。MEX ソース コードを更新して 64 ビット API を使用することを推奨します。

関連する例

詳細