(toppers-users 4431) Re: TOPPERS/ASPのSkyeye簡易パッケージの質問

Hiroaki TAKADA hiro @ ertl.jp
2015年 10月 11日 (日) 21:21:54 JST


尾崎様

名古屋大学の高田です。

斉藤さん wrote:
> その際は Launchpad GCC を使用しました.
> https://launchpad.net/gcc-arm-embedded

私も Launchpad GCC を使用しています。バイナリ配付されているので,
インストールが容易です。

_finiは,システム終了時に呼ばれるものですので,まずはその名前の
空関数を用意してリンクし,動作確認されてはどうでしょうか?

斉藤さん wrote:
> _fini だと libc に含まれると思いますので -lc を追加すれば良いかと思いますが,
> それだと -nostdlib と矛盾します.あと -lrdimon も追加した覚えがあります.

-nostdlib と -lc を併用しても良いと思います(私はやったことがあり
ます)。気になるなら,-nostartfiles を試してはどうでしょうか?

高田広章
名古屋大学

On 2015/10/09 19:57, Naoki Saito wrote:
> 尾崎様
>
> あまり情報が整理できているわけではありませんが,
> 私もCodeSourcery以外のコンパイラを使ってSSPカーネルのビルドを試行したことがあります.
> http://dev.toppers.jp/trac_user/contrib/wiki/ssp_arm_gcc
>
> その際は Launchpad GCC を使用しました.
> https://launchpad.net/gcc-arm-embedded
>
> SSPの場合はASPのSkyeyeパッケージに含まれるファイルから CodeSourery 依存と思われる部分を省いて
> コンパイルと最低限の実行確認に必要な追加を(半ば強引に)行っています.
>
> _fini だと libc に含まれると思いますので -lc を追加すれば良いかと思いますが,
> それだと -nostdlib と矛盾します.あと -lrdimon も追加した覚えがあります.
>
> start のバッティングをどのように回避したかについては,失念してしまいました.
> 時間をいただければ回答できるとは思いますが..ごめんなさい.
>
> 参考になるかどうかわかりませんが,以上です.
>
> ----
> 斉藤 直希
> 名古屋市工業研究所
>
> 2015年10月9日 17:05  <ozaki.minoru @ jp.panasonic.com>:
>> はじめまして、
>> パナソニックAVCネットワークスの尾崎です。
>>
>>
>> 現在、TOPPERS/ASPの評価のために開発環境を構築しています。
>> 評価基板を使用せずに、PC上で開発・デバックまでを行うため、ARMシミュレータSkyeyeを使った、簡易パッケージを使用しています。
>>
>> このパッケージのARMコンパイラSourcery G++ Lite 2010q1-188は、開発元のcodesourcery社がメンタグラフィック社に買収されたために、現在、有料版でしか入手することができません。
>> このために他のgcc系のフリーのARMコンパイラ2つのうちどちらかを使用しようとしていますが、未だmakeできていません。
>> そこで以下の2つの質問があります。
>>
>> 1.「GNUWing」コンパイラ
>> http://www.embedded.jp/gnuwing/
>>
>> makefileを修正して、コンパイルはできますが、リンクスクリプトがSourcery G++ Lite
>> のために\asp\target\at91skyeye_gcc\at91skyeye.ldでパースエラーが発生します。
>> 「GNUWing」でもmakeできるためのリンクスクリプトのサンプル等ははありませんか?
>>
>> 2.Sourcery G++系のgcc-arm-none-eabi
>> gcc-arm-none-eabi-4_8-2014q3-20140805-win32.exe
>>
>> arm-none-eabiなのでリンクスクリプトもパースエラーにはなりませんが、start.oとcrt0.oでstartがバッティングするため
>> makefileをライブラリを参照しないように変更しました。
>> LDFLAGS := -nostdlib $(LDFLAGS)
>> CFG1_OUT_LDFLAGS := -nostdlib $(CFG1_OUT_LDFLAGS)
>> LIBS := $(LIBS) -lgcc
>>
>> その結果、fini()が見つからないエラーとなります。
>>   undefined symbol `_fini' referenced in expression
>>
>> このコンパイラでもmakeできる設定方法はありませんか?
>>
>> 宜しくお願いします。
>>
>> ---------------------------------------------------------------------------------
>> パナソニックAVCネットワークス(社)
>> イノベーションセンター 技術総括 セキュアソリューション課
>>   Name:  尾崎 実
>>   E-mail: ozaki.minoru @ jp.panasonic.com
>>   MEITS 7-911-6901 TEL:050-3380-2446 FAX:092-477-1301
>> ----------------------------------------------------------------------------------
>>