ARM9 ベースのマイクロプロセッサでデータベース管理に SQLite 3 を使用しています。
Linux (Ubuntu 10.04) でプロジェクト用に SQLite 3 の最新バージョンをクロスコンパイルしたいと考えています。arm-none-linux-gnueabi-gcc compiler
を開発に使用しています。
次のコマンドを使用してクロスコンパイルを試みましたが、
ダウンロードしたものsqlite-amalgamation-3.7.0.tar
を解凍して、ターミナルで次のコマンドを書きます。
sudo ./configure --exec-prefix=/media/8CCC8E9BCC8E7F68/SQLIte3/sqliteinstall/ --host=arm --target=arm CC=/opt/arm-2011.03/bin/arm-none-linux-gnueabi-gcc AR=/opt/arm-2011.03/bin/arm-none-linux-gnueabi-ar STRIP=/opt/arm-2011.03/bin/arm-none-linux-gnueabi-strip RANLIB=/opt/arm-2011.03/bin/arm-none-linux-gnueabi-ranlib CFLAGS="-Os"
SQLite のクロスコンパイルに成功しました。
それで、
sudo make
指図。
正常に実行されました。
次に「make install」コマンド。
エラーは発生しませんでしたが、config.log ファイルに移動すると、次のような文があることがわかりました。
1.conftest.c:17:7: エラー: 配列 'off_t_is_large' のサイズが負です 2.conftest.c:12:28: 致命的なエラー: ac_nonexistent.h: そのようなファイルまたはディレクトリのコンパイルは終了しませんでした。3.conftest.cpp:23:28: エラー: ac_nonexistent.h: そのようなファイルまたはディレクトリはありません 4.conftest.c:67:13: エラー: 単項「*」の型引数が無効です (「int」があります)
適切にクロスコンパイルされているかどうかは疑問です。私は理解できない。
ボードにライブラリを挿入しましたが、正常に動作しますが、問題は速度が非常に遅くなることです。GCC コンパイラにフラグを設定していないという問題があると思います。
オプションが見つかりませんでした。不要な機能を省略できるように、GCC コンパイラに特定のフラグを設定する方法を教えてください。