(toppers-users 3111) Re: cq_starm_gcc のサンプルビルドに失敗

Meika Sugimoto s_meika @ witz-inc.co.jp
2010年 3月 26日 (金) 18:15:53 JST


Okazakiさま

ヴィッツの杉本と申します。

Cortex-M3担当ではありませんが、分かる範囲で
回答させていただきます。

_kernel_bitpat_cfgintですが、割込み要因が
静的APIのCFG_INTで設定されたかどうかを表すビットマスクです。
ビットマスクになっているのはたぶんメモリ節約のためです。

これが使われる状況ですが、dis_intやena_intで
個別割込みの禁止/許可を要求した場合に、CFG_INTで
設定がされていない割込みかどうかを判定する場合に用います。
#全てのターゲットで使うわけではありませんが、割と
#どのターゲットでもそうなっているようです。


問題になっている件ですが、これまでスペースが入った
記憶がないので、環境依存かもしれません。
試しに、arch/arm_m_gcc/prc.tfの136行目あたりにある、

	$TAB$UINT32_C($FORMAT("0x%08x", bitpat_cfgint)$), $NL$

という記述の0x%08xというのを単に0x%xと変えると
解消するかもしれません。
見た目の問題で8桁指定してありますが、悪さをしている可能性があります。
(このFORMAT関数がboostライブラリを使っているみたいですので、
コンフィギュレータの環境が影響します。)

手元に同じ環境がないので憶測ですが、参考になれば幸いです。


以上、よろしくお願いします。


upaathi @ gmail.com さんは書きました:
> Okazaki と申します.
> 
> TOPPERS-ASP on cq-starm を利用させて頂いています。
> (asp_cq_starm_gcc-20081003.tar.gz)
> 
> toppers は初めてなのですが、サンプルプログラムビルドで躓きまして、質問させていただきました.
> 
> user.txt 記載の様に
> 
> perl ../configure -T cq_starm_gcc
> make depend
> make
> 
> を実行したところ、make でエラーがでます.
> 
> -- error message --
> arm-none-eabi-gcc -c  -mcpu=cortex-m3 -mthumb  -Wall -g -O2
> -DTOPPERS_LABEL_ASM -I. -I../include -I../arch -I..
> -I../target/cq_starm_gcc -I../arch/arm_m_gcc/   -DALLFUNC
> -fno-strict-aliasing -mcpu=cortex-m3 -I../kernel kernel_cfg.c
> kernel_cfg.c:401: error: expected ')' before numeric constant
> kernel_cfg.c:402: error: expected ')' before numeric constant
> make: *** [kernel_cfg.o] Error 1
> 
> 
> ディレクトリに生成された kernel_cfg.c を調べてみますと L.398 から次の様になっており、make depend
> で誤った出力がされているようです.
> 
> const uint32_t _kernel_bitpat_cfgint[4] = {
> 	UINT32_C(0x00008000),
> 	UINT32_C(0x00200000),
>  	UINT32_C(0x000000 0),  <------- この部分、数値中にスペースが入っている
> 	UINT32_C(0x000000 0),   <------- この部分、数値中にスペースが入っている
> 
> };
> 
> どなたかお心当たりある方、ご教示頂ければと思っております.
> また、もし可能でしたらこの変数( _kernel_bitpat_cfgint
> )についてもどういう役割を持ったものなのか(割り込み許可/不許可が関係しているようですが...)、ご教示頂ければと思っております.
> どうぞ宜しくお願いいたします。
> 
> 
> 以下が当方の環境になります.
> 
> Mac OSX 10.5.8
> arm-none-eabi-gcc : ver.4.4.2
> GNU Make 3.81
> 
> asp kernel は次のものに、コンフィギュレータのみ単体で配布されているものをビルドし、asp ディレクトリ以下の cfg/
> を入れ替えたものを使用しています.
> 
> asp_cq_starm_gcc-20081003.tar.gz
> cfg-1.5.0.tar.gz
> boost 1.38
> 
> 
> 


-- 
※ 勤務地が変わりました
=============================
 (株)ヴィッツ 組込制御開発部
  杉本 明加                   
   MAIL:s_meika @ witz-inc.co.jp         
                          
    〒530-0041 大阪市北区天神橋6-3-16 朝日生命天六ビル7F
       TEL:(06)4801-5020   FAX:(06)4801-5021
=============================