0

アーム クロス コンパイラを使用して Atmel の例をコンパイルすると、次のようになります。

../at91lib/utility/stdio.c:64:8: エラー: 変数 'r' には初期化子がありますが、型が不完全です

コードは次のとおりです。

struct _reent r = {0, (FILE *) 0, (FILE *) 1, (FILE *) 0};

最初にここで必要なのは、このコードが何を意味するのかを理解することなので、ここで何ができるかわかりません。

そして、コンパイラ用に再コーディングできますか? または、コンパイラを他のバージョンにダウングレードする必要がありますか?

私のバージョン: arm-unknown-linux-uclibcgnueabi-gcc (Buildroot 2012.05-git-00423-g4205dbd) 4.5.3

4

1 に答える 1

1

AT91SAM コミュニティから:

正確に正しいバージョンのコンパイラを使用する必要があるようです: sam-ba アプレットを Linux でコンパイルするには、 http://www.codesourcery.com/sgpp/から ARM EABI 用の Sourcery G++ Lite 2008q3-39 を使用する必要があり ます。 lite/arm/portal/release567新しいものも古いものも (異なる) エラーを返します。

于 2012-05-10T06:51:49.833 に答える