...
Ubuntu(64-bit)環境でlibjpegを利用するためにDocker環境でコンパイルします。
★こちら(準備中)★を参考にしてDocker環境を構築してください。★を参考にしてDocker環境を構築およびDockerイメージを作成してください。
libjpegのソースコードをダウンロードする
公式サイトからlibjpegのソースコードをダウンロードします。
...
ダウンロードしたファイルは、${SDK_DIR}/external/build/sample/docker/docker_volumeディレクトリに配置してください。
...
コンパイル手順ファイルを更新する
${SDK_DIR}/external/build/sample/docker/docker_volume/module_compile.shファイルに、コンパイル手順を記載します。
下記の内容をコピーしてください。
Code Block |
---|
#!/bin/sh -x
HOME_PATH=/home/docker
LIBJPEG_ARCHIVES=jpegsrc.v9e.tar.gz
LIBJPEG_DIR=jpeg-9e
## for libjpeg
cd ${HOME_PATH}
tar zxf ${LIBJPEG_ARCHIVES}
cd ${LIBJPEG_DIR}
./configure
make |
コンパイルする
Dockerを用いてsqliteモジュールとPythonモジュールをコンパイルします。
${SDK_DIR}/external/build/sample/docker ディレクトリでDockerを実行してください。
Code Block |
---|
$ docker run --rm -it --name aarch64-ubuntu -v `pwd`/docker_volume:/home/docker compile/ubuntu-rel:0.1 |
${SDK_DIR}/external/build/sample/docker/docker_volume/jpeg-9eにコンパイル済みモジュールが作成されます。
AdamAppに配置する
作成されたモジュールを、AdamAppで使用できるように配置します。
チュートリアルではsrc/adamapp/jpeg_appを例とします。
libjpegを配置する
libjpegライブラリは以下のディレクトリにインストールされています。
${SDK_DIR}/external/build/sample/docker/docker_volume/jpeg-9e/.libs
libjpeg.so.9.5.0
上記ファイルを、AdamAppソースディレクトリにコピーしてください。
${SDK_DIR}/src/adamapp/jpeg_app/external/lib/aarch64-linux-gnu
Code Block |
---|
$ cp -r ${SDK_DIR}/external/build/sample/docker/docker_volume/jpeg-9e/.libs/libjpeg.so.9.5.0 ${SDK_DIR}/src/adamapp/jpeg_app/external/lib/aarch64-linux-gnu |
コピー後のディレクトリ構成は以下のようになります。
${SDK_DIR}/src/adamapp/jpeg_app/external/lib/aarch64-linux-gnu/libjpeg.so.9.5.0
Python用sqliteを配置する
チュートリアルは以上となります。