UbuntuにaptでinstallしたPythonのためにTA-Libをセットアップ

Python

Ubuntu 20.04にaptでインストールしたPythonでTA-Libを使うためのセットアップにつまづきましたので、その解決策となり得る情報をここに記載します。

前提となる環境

Ubuntu 20.04にaptによってPython 3.9をインストールしている環境です。

UbuntuにPythonをインストールする方法は色々とみかけますが、大きく分けて自分でビルドする方法aptでインストール方法をよく見ます。

今回、自分はaptでPython 3.9をインストールしました。

基本的には、以下のサイトで紹介されている方法がシンプルだと思います。

https://sig9.org/archives/4444

その他リポジトリに登録するなどの処理をしてaptでインストールする方法もあるようです。

Ubuntu 22.04にPython3.xを複数インストールして切り替える方法(PPA・apt) - Qiita
はじめに本書では、Ubuntu 22.04に、Pythonの環境をインストールする方法をまとめます。※2023/03/20 これまでUbuntu 20.04で書いていましたが、Ubuntu 22…

(aptによるPythonインストールの備忘録)

本筋に関係ありませんが、PPAというパッケージ配信の仕組み(?)があるようで、このあたりは詳しくないため後ほど調べるための備忘録として色々とっかかりになる情報をを記載しておきます。

PPAとは?

deadsnakesというところのリポジトリを追加する。

New Python Versions : “deadsnakes” team
This PPA contains more recent Python versions packaged for Ubuntu.Disclaimer: there's no guarantee of timely updates in case of security problems or other issue...

TA-Libを導入できない症状

TA-Lib自体はビルドしてubuntuにインストールしておき、その後Pythonのpipでモジュールをインストールします。

pipでのインストールは前述のaptでインストールしたPython 3.9でvenvで仮想環境を作って、その中で行いました。

しかしpipでta-libをインストールしたとき、error: command 'x86_64-linux-gnu-gcc' failed with exit status 1というエラーとなってしまいました。pipのインストールがコケます。

TA-Lib自体のインストールに失敗しているものかと色々リトライしましたが、それでもうまくいきません。

解決できた方法

そこでエラーメッセージをもとに色々調べると、以下のstack overflowが参考になりました。

setup script exited with error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
When I try to install odoo-server, I got the following error: error: Setup script exited with error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 Co...

python3-devというプログラムが必要なようです。とりあえずこれをインストールしてみましたが、やはりエラー。

しかし、今回使おうとしているのはPython 3.9ですので、この特定のバージョンをpython3-devをいれる説明もありましたので、これを試してみました。具体的にはpython3.9-devです。

sudo apt install python3.9-dev

結果的にこれでpipのインストールのエラーを解消し、ta-libを導入することができました。

前述した以下のサイトではしっかりpython3.9-devのインストールも行われています。自分が環境をセットアップする際に未インストールとしてしまったようです。

https://sig9.org/archives/4444

コメント

タイトルとURLをコピーしました