Main Content

AUTOSAR Adaptive モデルからのライブラリまたは実行可能ファイルのビルド

AUTOSAR Adaptive モデルのコード生成の一環として、スタティック ライブラリ、共有ライブラリまたは実行可能ファイルをビルドするための CMakeLists.txt ファイルを生成できます。[AUTOSAR Adaptive | CMake] ツールチェーンにより、モジュラー CMake パターンに従った CMakeLists.txt ファイルが生成されます。結果のライブラリを main.cpp ファイルとリンクするか、統合環境にある他のモデル ファイルと結合できます。

CMakeLists.txt からライブラリ ファイルをビルドするには、CMake ソフトウェアを実行する必要があります。

スタティック ライブラリまたは共有ライブラリをビルドするには、次のようにします。

  1. AUTOSAR Adaptive ターゲット (autosar_adaptive.tlc) 向けに構成されたコンポーネント モデルを開きます。

  2. [コンフィギュレーション パラメーター] ダイアログ ボックスを開いて、[コード生成] を選択します。[ツールチェーン設定] で次のようにします。

    1. [ツールチェーン][AUTOSAR Adaptive | CMake] に設定します。

    2. [ビルド構成][指定] に設定します。

    3. [CMake Target Type][Static] (スタティック ライブラリの場合) または [Shared] (共有ライブラリの場合) に設定します。

    4. [Include Directories] フィールド、[Link Libraries] フィールドおよび [Library Paths] フィールドで、コンパイルをサポートするために CMakeLists.txt で生成しなければならないライブラリおよびヘッダー ファイルを指定します。たとえば、[インクルード ディレクトリ] を文字列 ${START_DIR}/modelName_autosar_adaptive/stub/aragen に設定します。ここで、modelName は Adaptive モデルの名前です。

    5. [OK] をクリックします。

  3. モデルを作成します。ビルドによって C++ コード、ARXML ファイルおよび CMakeLists.txt ファイルが生成されます。

  4. モデル ビルド フォルダーにある CMakeLists.txt を開き、スタティック ライブラリまたは共有ライブラリの生成用に構成されていることを確認します。たとえば、以下を確認します。

    1. CMakeLists.txt ファイルに以下のものが含まれている

      add_library(modelName SHARED...) % for shared library
      
      または
      add_library(modelName STATIC...) % for static library

    2. target_include_directoriestarget_link_libraries および link_directories の仕様に [ツールチェーン設定] で指定した値が含まれている。

  5. MATLAB の外部でモデル ビルド フォルダーに移動します。スタティック ライブラリ ファイルまたは共有ライブラリ ファイルをビルドするには、次のコマンドを入力します。

    cmake CMakeLists.txt;
    make all;

make により、モデル ビルド フォルダーに Adaptive モデルのライブラリ ファイル (modelName.amodelName.so など) が生成されます。ライブラリを main.cpp ファイルとリンクするか、統合環境にある他のモデル ファイルと結合できます。

実行可能ファイルをビルドするには、次のいずれかを行います。

  • [AUTOSAR Adaptive | CMake] ツールチェーンを使用します。ライブラリの場合と同じ手順に従いますが、[CMake Target Type][Executable] に設定します。

  • スタンドアロン実行可能ファイルを生成するには、[AUTOSAR Adaptive Linux Executable] ツールチェーンを使用します。詳細については、AUTOSAR Adaptive モデルからのすぐに使える Linux 実行可能ファイルのビルドを参照してください。

関連するトピック