Changes between Version 30 and Version 31 of FAQ


Ignore:
Timestamp:
Dec 15, 2016, 3:31:43 PM (8 years ago)
Author:
ertl-yutaka
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • FAQ

    v30 v31  
    136136詳細は、TOPPERS次世代カーネル統合仕様書のCRE_TSKの説明を参照してください。また、アプリケーションの動作中に優先度を変更する chg_pri というAPIもあります。
    137137
    138 ==== Q:ソースコードを複数のディレクトリに分けて管理するにはどうすれば良いでしょうか? ====
    139 A:以下の2つの方法があります。なお,この方法は,EV3RT β6-3でサポートされましたので,それ以前のバージョンをお使いの場合は,β6-3以降に更新してからお試しください。
    140 
    141 hrp/sdk/workspace 以下にアプリケーションのディレクトリ(appとする)が存在していることを前提に説明します。
    142 
    143 最初の状態では,アプリケーションのディレクトリ内にすべてのソースコードを置く,または以下のルールに従って置くことができます。
    144 
    145 ・include という名称のディレクトリにヘッダファイル
    146 ・src という名称のディレクトリに .c ファイル
    147 
    148 make を実行した際には,この想定でソースコードを探索します。
    149 
    150 もし,別の名称のディレクトリを作成したい場合には,以下のファイルを修正する必要があります。
     138==== Q:アプリケーションのソースコードを複数のディレクトリに分けて管理するにはどうすれば良いでしょうか? ====
     139A:主に,2つの方法がありますので,目的に応じてどちらを選んでください。なお,ここで説明する方法は,EV3RT β6-3でサポートされました。それ以前のバージョンをお使いの場合は,β6-3以降に更新してからお試しください。
     140
     141hrp2/sdk/workspace 以下にアプリケーションのディレクトリ(appとする)が存在していることを前提とします。hrp2/sdk/workspace で,make を実行すると,アプリケーションのディレクトリ下にあるソースコード(app/app.h や app/app.c)と,以下のルールに従ってソースコードを探索します。
     142
     143 * include という名称のディレクトリにあるヘッダファイル
     144 * src という名称のディレクトリにある .c ファイル
     145
     146これ以外の場所にソースコードを置きたい場合には,以下のファイルを修正する必要があります。
     147
    151148{{{
    152149ev3rt/hrp2/sdk/common/Makefile.prj.common
    153150}}}
    154151
    155 修正方法は,管理方法によって以下のように2つあります。修正した後,再度,make を実行してください。
     152
     153具体的な修正方法は,主に,以下の2つあります。修正した後,再度,make を実行してください。
    156154
    157155===== すべてのディレクトリを探索対象に入れる場合 =====
    158156
    159 アプリケーションのディレクトリの下に,複数のディレクトリを作成し,全部を探索対象に入れたい場合には,
     157アプリケーションのディレクトリの下に,複数のディレクトリを作成し,それら全部を探索対象に入れたい場合には,
    160158{{{
    161159APPL_DIR += $(foreach dir,$(shell find $(APPLDIR) -type d),$(dir))
    162160}}}
    163 と修正すれば,OKです。この場合,すべてのディレクトリが対象になるので,例えば,バージョン1(ver1ディレクトリ)と機能を追加したバージョン2(ver2ディレクトリ)のディレクトリを切り替えるという用途には使えません。
    164 その場合は,次のディレクトリ指定の方法を使います。
     161と修正すればOKです。
     162
     163この場合,すべてのディレクトリが対象になるので,例えば,バージョン1(ver1ディレクトリ)と機能を追加したバージョン2(ver2ディレクトリ)のディレクトリを切り替える(どちらか1つのディレクトリのソースコードのみを使う)という用途には使えません。その場合は,次のディレクトリ指定の方法を使います。
    165164
    166165===== ソースコードのディレクトリを指定する場合 =====
     
    169168{{{
    170169APPL_DIR += $(foreach dir,$(shell find $(APPLDIR) -type d -name src),$(dir))
    171 ↓こちらを追加
     170↓これをディレクトリごとに追加
    172171APPL_DIR += $(foreach dir,$(shell find $(APPLDIR) -type d -name test),$(dir))
    173172
    174173}}}
    175 
    176174
    177175