🏀

libjpeg-turbo をソースからビルドする

2023/05/01に公開

jetson nanoに入っているlibjpeg-turnoのバージョンが古かったので、ソースからビルドしてみました。

libjpeg-turbo-2.1.5.1 のソースコードを入手

wget https://github.com/libjpeg-turbo/libjpeg-turbo/archive/refs/tags/2.1.5.1.tar.gz
tar tvf 2.1.5.1.tar.gz 
cd libjpeg-turbo-2.1.5.1/

ビルドとインストール

CCにはzig cc を使いました。こうすれば最新版のclangが使えるので。

mkdir build
cd build
cmake -G"Unix Makefiles" CC='zig cc' ../
make
sudo make install

以下のところにインストールされました。

$ find /opt/libjpeg-turbo/ -type f
/opt/libjpeg-turbo/man/man1/djpeg.1
/opt/libjpeg-turbo/man/man1/rdjpgcom.1
/opt/libjpeg-turbo/man/man1/wrjpgcom.1
/opt/libjpeg-turbo/man/man1/jpegtran.1
/opt/libjpeg-turbo/man/man1/cjpeg.1
/opt/libjpeg-turbo/include/jconfig.h
/opt/libjpeg-turbo/include/turbojpeg.h
/opt/libjpeg-turbo/include/jmorecfg.h
/opt/libjpeg-turbo/include/jerror.h
/opt/libjpeg-turbo/include/jpeglib.h
/opt/libjpeg-turbo/bin/tjbench
/opt/libjpeg-turbo/bin/jpegtran
/opt/libjpeg-turbo/bin/djpeg
/opt/libjpeg-turbo/bin/wrjpgcom
/opt/libjpeg-turbo/bin/cjpeg
/opt/libjpeg-turbo/bin/rdjpgcom
/opt/libjpeg-turbo/doc/usage.txt
/opt/libjpeg-turbo/doc/libjpeg.txt
/opt/libjpeg-turbo/doc/example.txt
/opt/libjpeg-turbo/doc/tjexample.c
/opt/libjpeg-turbo/doc/LICENSE.md
/opt/libjpeg-turbo/doc/README.md
/opt/libjpeg-turbo/doc/structure.txt
/opt/libjpeg-turbo/doc/wizard.txt
/opt/libjpeg-turbo/doc/README.ijg
/opt/libjpeg-turbo/lib64/libturbojpeg.a
/opt/libjpeg-turbo/lib64/pkgconfig/libjpeg.pc
/opt/libjpeg-turbo/lib64/pkgconfig/libturbojpeg.pc
/opt/libjpeg-turbo/lib64/libjpeg.so.62.3.0
/opt/libjpeg-turbo/lib64/cmake/libjpeg-turbo/libjpeg-turboTargets.cmake
/opt/libjpeg-turbo/lib64/cmake/libjpeg-turbo/libjpeg-turboConfig.cmake
/opt/libjpeg-turbo/lib64/cmake/libjpeg-turbo/libjpeg-turboTargets-release.cmake
/opt/libjpeg-turbo/lib64/cmake/libjpeg-turbo/libjpeg-turboConfigVersion.cmake
/opt/libjpeg-turbo/lib64/libturbojpeg.so.0.2.0
/opt/libjpeg-turbo/lib64/libjpeg.a

使用するとき

インクルードファイルとライブラリのパスを変更するため、以下のオプションをコンパイラに追加します。
-I /opt/libjpeg-turbo/include/ -L /opt/libjpeg-turbo/lib64/

Discussion