ARM用のクロスコンパイラをセットアップしようとしています。私は このチュートリアル に従い、クロスコンパイラを実行して次の情報を取得できるようになりました。
arm-unknown-eabi-gcc (GCC) 4.8.4 Copyright (C) 2013 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.
しかし、Dropbear(コンパイルしようとしているソフトウェア)を./configureしようとすると、エラーが発生します。
checking for gcc... /home/josh/opt/cross/bin/arm-unknown-eabi-gcc
checking whether the C compiler works... no
configure: error: in `/home/josh/src/dropbear-2016.74':
configure: error: C compiler cannot create executables
See `config.log' for more details
これは、私がフォローしていたチュートリアルで次のように言及されているため、ターゲットシステムの標準ライブラリがまだないためだと思います。
このコンパイラが通常のCプログラムをコンパイルできないことに注意してください。クロスコンパイラーは、標準ヘッダーのいずれかを#includeする場合は常にエラーを吐き出します(実際にはプラットフォームに依存せず、コンパイラー自体によって生成されるいくつかのヘッダーを除く)。これは非常に正しいです-ターゲットシステム用の標準ライブラリはまだありません!
ターゲットの標準ライブラリを取得/構築するにはどうすればよいですか?
手動で作成したクロスコンパイラーをすべて削除し、Sudo apt-get install gcc-arm-linux-gnueabi
を実行するだけで、これを解決することになりました。これは、箱から出してすぐに機能するようです。