このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
C++ ライブラリ インターフェイスのビルドと内容の確認
メモ
ライブラリの機能が不足している場合、ライブラリにサポートされていない言語機能またはデータ型が含まれている可能性があります。詳細については、Verbose
オプションを true
に設定して clibgen.generateLibraryDefinition
を実行してください。
ライブラリ定義ファイルからのビルド
関数 clibgen.generateLibraryDefinition
を使用してライブラリ定義ファイルを作成した場合は、関数 build
を使用します。たとえば、ライブラリ定義ファイルが definelibName
の場合は、次を入力します。
build(definelibName
) addpathlibName
ライブラリに機能を表示します。
summary(definelibName)
1 ステップのビルド
定義の必要なポインターや他の構成要素がライブラリに含まれていない場合、定義ファイルを作成する必要はありません。C++ ヘッダー ファイルおよびライブラリ ファイルを指定して、clibgen.buildInterface
を直接呼び出します。たとえば、ヘッダー ファイル header.hpp
で定義されたライブラリ libName
をビルドするには、次を入力します。
clibgen.buildInterface('header.hpp
',Verbose=true) addpathlibName
C++ コンパイラ標準の指定
選択したコンパイラの既定の標準でサポートされない C++ 言語の構成要素がライブラリで使用されている可能性があります。詳細については、Visual Studio バージョン別の Microsoft C/C++ 言語準拠を参照してください。インターフェイスのビルドに使用する C++ コンパイラ標準を指定するには、名前と値の引数 AdditionalCompilerFlags
を使用します。
clibgen.generateLibraryDefinition("A.hpp",AdditionalCompilerFlags=value)
たとえば、次の表は C++17 標準用の value
を示しています。
AdditionalCompilerFlags=Value
プラットフォーム | コンパイラ a | C++17 標準を使用する場合の値 |
---|---|---|
Windows® | Microsoft Visual C++ 2019 |
|
Windows | MinGW64 Compiler (C++) |
|
Windows | Intel Parallel Studio XE 2020 for C++ with Microsoft Visual Studio 2019 |
|
Linux® | g++ |
|
macOS | Xcode |
|
a For information about supported compilers, see Supported and Compatible Compilers. |
コンパイラとリンカーのフラグの指定
インターフェイスをビルドする関数に特定のコンパイラとリンカーのフラグを渡すには、clibgen.generateLibraryDefinition
または clibgen.buildInterface
で名前と値の引数 AdditionalCompilerFlags
または AdditionalLinkerFlags
を使用します。これらのフラグは、関数では検証されずにコンパイラとリンカーに渡されます。パブリッシャーはフラグによるビルド プロセスへの影響を知る必要があります。
インターフェイスの内容の確認
MATLAB® は、一部の C++ コメント (ある場合) をヘッダー ファイルとソース ファイルからインターフェイスに自動的にコピーします。この内容は変更または置き換えることができます。詳細については、C++ ライブラリに対する MATLAB インターフェイスのヘルプ テキストのパブリッシュを参照してください。
ライブラリの機能のヘルプを表示するためのリンクを提供するヘルプ ブラウザーを開くには、関数 doc
を使用します。たとえば、ライブラリ libname
に含められたクラスを確認するには、次を入力します。
doc clib.libname
クラスのリンクをクリックします。MATLAB は新しいタブを開きます。クラス ClassName
のヘルプを表示するために [コンストラクターの概要] リンクをクリックして、内容を確認します。[Property Summary] のリンクをクリックします。clib.libname.ClassName
メソッドの [メソッドの概要] を精査します。
デバッグ用のインターフェイスのビルド
MATLAB インターフェイスからの C++ ライブラリのデバッグ
参考
build
| clibgen.LibraryDefinition