1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Ubuntu 16.04(WSL環境)にsqlite3.26をソースコードからインストールする手順

Last updated at Posted at 2019-01-05

#はじめに
SQLite3最新版をUbuntu 16.04にインストールする方法です。UbuntuはWindwos Subsystem for Linux環境です。最近サポートされたウィンドウ関数を試すには、色々パッケージを探してくるよりも、ソースコードからインストールしたほうが早そう。

#インストール手順

Step 1. SQLite公式ウェブサイトからソースコードを入手する。

以下のURLでダウンロードページに行けます。
https://www.sqlite.org/download.html
ここから、sqlite-autoconfの最新版をダウンロードします。ダウンロード先(ローカルPCのディレクトリ)はどこでも良いです。執筆時は、3.26.0が最新であり、例えばホームディレクトリにて、以下のコマンでダウンロードします。続いて、解凍します。

~$ wget https://www.sqlite.org/2018/sqlite-autoconf-3260000.tar.gz
~$ tar xvzf sqlite-autoconf-3260000.tar.gz

Step 2. 足りないライブラリをインストールする。

開発環境が入っていなければ、以下のコマンドでインストールします1。それなりに時間がかかります。

~$ sudo apt-get install build-essential

コンパイルに必要なライブラリをインストールします。私の環境で不足していたのは以下の3種類でした。

  1. zlib
  2. edit
    対応するパッケージをインストールする。
~$ sudo apt-get install zlib1g-dev libedit-dev

Step 3. configureでMakefileを作成する。

インストール先は、/opt/sqlite/sqlite3.26.0/としました。すでに、標準パッケーとじとしてsqlite3がインストールされており、これを壊さないためです。以下のコマンドでMakefileを作成します。なお、環境ローカルのソフトウェアをインストールする先としては、/opt以下にするのが現在のお作法のようです2

~$ cd sqlite-autoconf-3260000
~/sqlite-autoconf-3260000$ ./configure --prefix=/opt/sqlite/sqlite3.26.0/

また、configureの実行結果を見ると、足りないライブラリが分かります。例えば、私の環境では当初、以下のようなメッセージが出ていました。そのため、Step 2にさかのぼって、ライブラリをインストールしました。Step 2とStep 3を繰り返して納得のいくMakefile(configure結果)にします。

checking editline/readline.h usability... no
checking zlib.h usability... no

Step 4. Make & Make install

ここまでくれば、あとは実行ファイルを作って、インストールするだけです。なお、Makeの引数に-jをつければ、並列にコンパイラが走ります。

~/sqlite-autoconf-3260000$ make -j
~/sqlite-autoconf-3260000$ sudo make install

なお、インストール先は、Step 2で指定したとおり、/opt以下となります。インストール時に、pathがどうとか色々メッセージが出ますが、あまり有益な情報はなかったです。

このままではsqlite3にパスが通っていないので、実行時にはフルパスで指定する必要があります。ローカル環境かつ管理者権限もあるため、/usr/local/binにシンボリックリンクを張ってしまいました。わざわざ/opt以下にした意味があるのか、一貫性がないような気もしますが。

~$ cd /usr/local/bin
/usr/local/bin$ sudo ln -s /opt/sqlite/sqlite3.26.0/bin/sqlite3 sqlite3.26

Step 5. 確認

念の為、インストールしたものが動いているのか確認します。うまく実行できていれば、以下のようにダウンロードしたバージョンが表示されるはずです。

$ sqlite3.26 --verion
3.26.0 2018-12-01 12:34:55 bf8c1b2b7a5960c282e543b9c293686dccff272512d08865f4600fb58238b4f9

おわりに

Qiitaに投稿してみましたが、振り返ると特筆すべきところはなかったです。個人的に、/opt以下の扱いを知れたのが良かったぐらいでしょうか。

これでようやく、本来の目的だったウィンドウ関数が試せる3

  1. sqliteの最新版を試そうなんてユーザーは開発環境なんて入っていて当たり前という気もしますが。

  2. 以前は/usr/localだったのですが、個別パッケージ名でディレクトリを切ってはいけないようです。そのため、/optを活用するのだとか。 http://hateda.hatenadiary.jp/entry/2014/02/02/191807

  3. apt-getでインストールできるかなと考えていたところ、そもそもサポートが最近だったらしく、全くお呼びではなかった。3.26.0に対応したUbuntuパッケージもあるようですが、disco向け(Ubuntu 19.04向け)であり、かえって依存関係を破壊しそうなため、そっと検索結果を閉じました。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?