[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

(toppers-users 1427) Re: JSPカーネル 1.4のC++バインディングについて



宇佐美です。早速の回答ありがとうございます。

高木信尚 さんは書きました:
>Newlibの_sbrk_rの第2引数は、1.10.0まではsize_t型だったのですが、
>1.11.0以降はptrdiff_t型に変更になっています。これがコンパイル時に
>障害が出る原因と思われます。
>SHの場合、size_tとptrdiff_tのサイズは必ず同じになるので、ヘッダ
>をインクルードしない方法でも実質的には問題ありませんが、より
>正確にはnewlibrt.cの_sbrk_r関数の定義を、第2引数がsize_t型になる
>ように修正すべきかと思います。

reent.hの中身をちゃんと見てませんでした。
newlibのバージョンに依存するのですね。
上記修正で、問題なくコンパイルできました。
どうもありがとうございました。

>> また、reent.hをインクルードしないように修正して、
>> コンパイルした場合、__dso_handleが定義されていないと、
>> リンクエラーになります。
>> 
>> /usr/local/sh++/lib/gcc-lib/sh-hitachi-elf/3.2.3/../../../../
>> sh-hitachi-elf/bin/
>> ld: jsp.exe: hidden symbol `__dso_handle' isn't defined
>> (改行は適当に変えています)
>> 
>> リンカスクリプトで、適当に定義してやればリンク自体は通るのですが、

** Cut quoted 6 lines by the mail filter. **

Makefileを見直したり、configureを実行しなおしたりしてみましたが、
たぶんこの点は問題ないと思います。

                start.o /usr/local/sh++/lib/gcc-lib/sh-hitachi-elf/3.2.3/m2/crti
.o /usr/local/sh++/lib/gcc-lib/sh-hitachi-elf/3.2.3/m2/crtbegin.o   cxx_sample2.
o    timer.o serial.o logtask.o log_output.o vasyslog.o t_perror.o strerror.o cx
xrt.o newlibrt.o kernel_cfg.o   libkernel.a  -lstdc++ -lm -lc  -lgcc /usr/local/
sh++/lib/gcc-lib/sh-hitachi-elf/3.2.3/m2/crtend.o /usr/local/sh++/lib/gcc-lib/sh
-hitachi-elf/3.2.3/m2/crtn.o
/usr/local/sh++/lib/gcc-lib/sh-hitachi-elf/3.2.3/../../../../sh-hitachi-elf/bin/
ld: jsp.exe: hidden symbol `__dso_handle' isn't defined