(toppers-users 3290) Re: カーネルを関数単位でライブラリ化する方法が上手く行きません。

Hiroaki TAKADA hiro @ ertl.jp
2010年 11月 17日 (水) 16:49:15 JST


こいさん wrote:

> Cortex-M3のTOPPERS/ASPでカーネルを関数単位でライブラリ化する方法を試
> みていますがBuildでAborted (core dumped)になります。

make でいきなり落ちるというのは、make の問題のような気がします。以下の
2つをチェックされることをお勧めします。

(1) Makefile.depend の内容は正しく生成されているでしょうか?

(2) make depend の後に、Makefile.depend を消去し、その後に make すると
どうなりますか?

高田広章
名古屋大学

(10/11/17 14:55), koizumi yoshiyuki wrote:
> こいさんです
> Cortex-M3のTOPPERS/ASPでカーネルを関数単位でライブラリ化する方法を試みて 
> いますがBuildでAborted (core dumped)になります。
> CygwinとSourcery G++ Liteを使用しています。doc\user.txtの「3.3 サンプル 
> プログラムの構築と実行」は出来ています。オブジェクトサイズの縮小を図りた 
> いのでライブラリ化に進みました。
> 「3.4 カーネルを関数単位でライブラリ化する方法」を実行していますが、 
> 「make depend」は出来ているようですが、「make」でエラーになります。
> makeはソースフィルの追加程度しか触ったことが有りません。
> 以下はcygwinのコンソールログです。
> ------------------------------------------------------------------------------
> zzz /cygdrive/c/TOPPERS/asp
> $ mkdir app3 <−−−−−−−−−−−−−−−作業ディレクトリの作成
> zzz /cygdrive/c/TOPPERS/asp
> $ cd app3 <−−−−−−−−−−−−−−−−作業ディレクトリ移動
> zzz /cygdrive/c/TOPPERS/asp/app3
> $ ../configure -T cq_starm_gcc -f <−−−−−−−コンフィグ実行
> configure: Generating Makefile from ../sample/Makefile.
> configure: Generating sample1.c from ../sample/sample1.c.
> configure: Generating sample1.h from ../sample/sample1.h.
> configure: Generating sample1.cfg from ../sample/sample1.cfg.
> zzz /cygdrive/c/TOPPERS/asp/app3
> $ make depend <−−−−−−−−−−−−−make depend実行
> if ! [ -f Makefile.depend ]; then \
> rm -f kernel_cfg.timestamp kernel_cfg.c kernel_cfg.h ; \
> rm -f cfg1_out.c cfg1_out.o cfg1_out.exe cfg1_out.syms cfg1_out.srec; \
> rm -f makeoffset.s offset.h; \
> fi
> rm -f Makefile.depend
> arm-none-eabi-gcc -S -mcpu=cortex-m3 -mthumb -g -Wall -O2 
> -DTOPPERS_LABEL_ASM -I. -I../include -I../arch -I.. -I../ta
> rget/cq_starm_gcc -I../arch/arm_m_gcc/ -fno-strict-aliasing 
> -mcpu=cortex-m3 -I../kernel ../arch/arm_m_gcc/makeoffset.c
> /usr/local/bin/perl ../utils/genoffset makeoffset.s > offset.h
> ../cfg/cfg/cfg --pass 1 --kernel asp -I. -I../include -I../arch -I.. 
> -I../target/cq_starm_gcc -I../arch/arm_m_gcc/ --api
> -table ../kernel/kernel_api.csv --cfg1-def-table 
> ../kernel/kernel_def.csv --cfg1-def-table ../target/cq_starm_gcc/target
> _def.csv --cfg1-def-table ../arch/arm_m_gcc/prc_def.csv sample1.cfg
> arm-none-eabi-gcc -c -mcpu=cortex-m3 -mthumb -g -Wall -O2 
> -DTOPPERS_LABEL_ASM -I. -I../include -I../arch -I.. -I../ta
> rget/cq_starm_gcc -I../arch/arm_m_gcc/ -fno-strict-aliasing 
> -mcpu=cortex-m3 -I../kernel cfg1_out.c
> arm-none-eabi-gcc -c -mcpu=cortex-m3 -mthumb -g -Wall -O2 
> -DTOPPERS_LABEL_ASM -I. -I../include -I../arch -I.. -I../ta
> rget/cq_starm_gcc -I../arch/arm_m_gcc/ -fno-strict-aliasing 
> -mcpu=cortex-m3 -I../kernel ../arch/arm_m_gcc/start.S
> arm-none-eabi-gcc -mcpu=cortex-m3 -mthumb -g -Wall -O2 
> -DTOPPERS_LABEL_ASM -I. -I../include -I../arch -I.. -I../targe
> t/cq_starm_gcc -I../arch/arm_m_gcc/ -nostdlib -nostdlib 
> -Wl,-Ttext,0x08000000 -Wl,-Tdata,0x20000000 -T ../target/cq_sta
> rm_gcc/cq_starm.ld -o cfg1_out.exe \
> cfg1_out.o
> arm-none-eabi-nm -C cfg1_out.exe > cfg1_out.syms
> arm-none-eabi-objcopy -O srec -S cfg1_out.exe cfg1_out.srec
> ../cfg/cfg/cfg --pass 2 --kernel asp -I. -I../include -I../arch -I.. 
> -I../target/cq_starm_gcc -I../arch/arm_m_gcc/ \
> -T ../target/cq_starm_gcc/target.tf <http://target.tf> --api-table 
> ../kernel/kernel_api.csv --cfg1-def-table
> ../kernel/kernel_def.csv --cfg1-def-table 
> ../target/cq_starm_gcc/target_def.csv --cfg1-def-table 
> ../arch/arm_m_gcc/prc_
> def.csv sample1.cfg
> touch kernel_cfg.timestamp
> Generating Makefile.depend.
> zzz /cygdrive/c/TOPPERS/asp/app3
> $ make <−−−−−−−−−−−−−−−−make実行
> Aborted (core dumped) <−−−−−−−−−−−−−−−−−エラー発生ーーーーーー
> zzz /cygdrive/c/TOPPERS/asp/app3
> $
> 
> zzz /cygdrive/c/TOPPERS/asp/app3
> $ make -v <−−−−−−−−−−−−−−−何が起きているの見たが良く分からず
> GNU Make 3.81
> Copyright (C) 2006 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.
> There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
> PARTICULAR PURPOSE.
> This program built for i686-pc-cygwin
> zzz /cygdrive/c/TOPPERS/asp/app3
> $
> ------------------------------------------------------------------------------
> 以上