...
次のチュートリアルとして、SQLiteのコンパイルを実施します。
ソースコードをダウンロードする
ソースコードを以下URLからダウンロードしてください。sqliteとPythonのソースコードを以下URLからダウンロードしてください。
このチュートリアルでは、例として3このチュートリアルでは、sqlite 3.40.0を使用します。ダウンロードするバージョンは、使用する機能に合わせて選択してください。.0、Python 3.7.9 を使用します。
ダウンロードするバージョンは、使用する機能に合わせて選択してください。
sqlite 3.40.0
https://www.sqlite.org/2022/sqlite-autoconf-3400000.tar.gz
Python 3.7.9
ダウンロードしたファイルは、${SDK_DIR}/external/build/sample/docker/docker_volumeディレクトリに配置してください。
...
Code Block |
---|
#!/bin/sh -x HOME_PATH=/home/docker LIB_INSTALL_DIR=${HOME_PATH}/install_path SQLITE_ARCHIVES=sqlite-autoconf-3400000.tar.gz SQLITE_DIR=sqlite-autoconf-3400000 SQLITE_BUILD_DIR=sqlite-autoconf-3400000/build PYTHONPATH=$PYTHONPATH:${NUMPY_SITE_PACKAGES} export PYTHONPATH PYTHON_ARCHIVES=Python-3.7.9.tgz PYTHON_DIR=Python-3.7.9 ## for sqlite cd ${HOME_PATH} tar zxf ${SQLITE_ARCHIVES} mkdir -p ${SQLITE_BUILD_DIR} cd ${SQLITE_DIR} ./configure --prefix=${LIB_INSTALL_DIR} make make install ## for python cd ${HOME_PATH} tar zxf ${PYTHON_ARCHIVES} cd ${PYTHON_DIR} ./configure --prefix=${LIB_INSTALL_DIR} make make install |
コンパイルする
Dockerを用いてNumPyモジュールとOpenCVモジュールをコンパイルします。Dockerを用いてsqliteモジュールとPythonモジュールをコンパイルします。
${SDK_DIR}/external/build/sample/docker ディレクトリでDockerを実行してください。
...
${SDK_DIR}/external/build/sample/docker/docker_volume/install_pathにコンパイル済みモジュールが作成されます。
Info |
---|
OpenCVのコンパイルには時間がかかるため、しばらく待ちます。 |
AdamAppに配置する
作成されたモジュールを、AdamAppで使用できるように配置します。
チュートリアルではsrc/adamapp-py/sqlite_appを例とします。
SQLiteを配置する
sqliteライブラリは以下のディレクトリにインストールされています。
${SDK_DIR}/external/build/sample/docker/docker_volume/install_path/lib
libsqlite3.so
libsqlite3.so.0
libsqlite3.so.0.8.6
libsqlite3.la
libsqlite3.a
上記5ファイルを、AdamAppソースディレクトリにコピーしてください。
${SDK_DIR}/src/adamapp-py/sqlite_app/external/lib/aarch64-linux-gnu
Code Block |
---|
$ cp -R ${SDK_DIR}/external/build/sample/docker/docker_volume/install_path/lib/libsqlite3.so ${SDK_DIR}/src/adamapp-py/sqlite_app/external/lib/aarch64-linux-gnu
$ cp -R ${SDK_DIR}/external/build/sample/docker/docker_volume/install_path/lib/libsqlite3.so.0 ${SDK_DIR}/src/adamapp-py/sqlite_app/external/lib/aarch64-linux-gnu
$ cp -R ${SDK_DIR}/external/build/sample/docker/docker_volume/install_path/lib/libsqlite3.so.0.8.6 ${SDK_DIR}/src/adamapp-py/sqlite_app/external/lib/aarch64-linux-gnu
$ cp -R ${SDK_DIR}/external/build/sample/docker/docker_volume/install_path/lib/libsqlite3.la ${SDK_DIR}/src/adamapp-py/sqlite_app/external/lib/aarch64-linux-gnu
$ cp -R ${SDK_DIR}/external/build/sample/docker/docker_volume/install_path/lib/libsqlite3.a ${SDK_DIR}/src/adamapp-py/sqlite_app/external/lib/aarch64-linux-gnu |
コピー後のディレクトリ構成は以下のようになります。
${SDK_DIR}/src/adamapp-py/jpeg_app/python/site-packages/numpy