(toppers-users 4317) Re: TOPPERS/ASP1.8+TINET1.5.3でビルドできません

Hiroaki TAKADA hiro @ ertl.jp
2014年 12月 10日 (水) 10:59:09 JST


阿部先生

> これまで、この部分では、リトルエンディアンのプロセッサでも
> 問題なかったため、何か違うのか調べています。

offset.h の作成方法に,makeoffset を使う方法と,genoffset.tf を
使う方法があります(ポーティングガイド 2.5節参照)。今回の問題は,
genoffset.tf を使う場合に顕在化するものと思います。

Release 1.7.0 でも,genoffset.tf を使うと問題が生じ,Release
1.8.0 でも,makeoffset を使うと問題が生じないものと思います。

ただ,この問題は,他でも生じる可能性がありますので,本質的に解決
しておいた方が良いと思います。具体的には,TINET内でエンディアンを
参照するためのマクロを,SIL_ENDIAN_BIG/SIL_ENDIAN_LITTLE とは異
なる名称にしてもらうのが一案です。

よろしくお願いします。

高田広章
名古屋大学

On 2014/12/10 10:53, 阿部 司 wrote:
> 高田先生、塩見様、皆様
> 
> 苫小牧高専の阿部です。
> 
> 高田先生、お忙しいところありがとうございます。
> 
>> 阿部先生,塩見様,皆様
>>
>> JSP と ASPで,ENDIALマクロの構成を変更したのが原因のようです。
>>
>> SIL_ENDIAN_BIG と SIL_ENDIAN_LITTLE の2つのマクロがありますが,
>> JSP では,「該当する方を 1 に,該当しない方を 0 に定義する」と
>> していたのを,ASP では,「該当する方のみを定義する」と変更して
>> います。TINET では,ASP においても,JSP と同様のマクロに定義し
>> なおしているわけですが,それが,ASP の方に悪さをしているという
>> ことです。
>>
>> 塩見様へ。
>>
>> とりあえず,ASP側を修正して回避する方法をお知らせします。
>>
>> kernel/kernel_def.csv の最初の2行を,以下の2行に入れ換えてみて
>> ください。
>>
>> ----------
>> SIL_ENDIAN_BIG,#defined(SIL_ENDIAN_BIG),,SIL_ENDIAN_BIG+0
>> SIL_ENDIAN_LITTLE,#defined(SIL_ENDIAN_LITTLE),,SIL_ENDIAN_LITTLE+0
>> ----------
>>
>>
> 
> これまで、この部分では、リトルエンディアンのプロセッサでも
> 問題なかったため、何か違うのか調べています。
> 時間をいただけると幸いです。
>