Help us understand the problem. What is going on with this article?

RaspberryPiでcondaを使いたいしpython3.6も使いたい

More than 1 year has passed since last update.

RaspberryPiでcondaもpython3.6も使いたければ、Berry Condaを使うのがよさそうです。
Berry CondaはRaspberry Pi用のcondaディストリビューションです。

condaとは何か、何がいいのか、という点についてはこちらが詳しいです。

環境

 RaspberryPi3 Model BにRaspbianを入れています。
 検証していませんが、おそらくほかのRaspberryPiの型でも可能です。

背景

 2017/12/6現在、RaspberryPiでcondaを使いたいと思って調べると、かなり古いバージョンのminicondaを使う方法が出てきます。(このページなど)
 
 これはRaspbianに対応するminicondaがアップデートされていないからなのですが、このminicondaを使うとpython3.4までしか入らないみたいです。

 python3.5以上を使うにはどうすればいいかというと、python自体のソースコードをビルドする方法が真っ先に出てきます。面倒ですね。
 追記 Raspbianのバージョン9.0以上ではもともとpython3.5が入っているようです
 私は、まあpython3.4でもいいかと思ってminicondaを使っていました。

それでもpython3.6を使いたい! あ、でもcondaも……

 一度condaの便利さを知ってしまったら、もうcondaなしでは生きていけません。
 調べていると、Berry CondaというRaspberryPi用のcondaを作って管理してくださっている方がいました。
 思いのほか簡単にインストールできたので紹介します。

え、もうminiconda入れたんだけど……

 という方は、ターミナル上で、

$conda config --add channels rpi
$conda install python=3.6

($は先頭を表しているだけなので打ち込まなくていいです)

とすればpython3.6がインストールされます。Berry Condaの作者、jjhelmus氏rpi というRaspberryPi用のチャンネルを作ってくださっているみたいです。
 そのあと、python3.6を使う場合には、

$conda create -n py36 python=3.6

とすると、python3.6の仮想環境が作られます。py36の部分は各自お好みの名前を付けてください。

minicondaなんてしらん! Berry Conda入れたい!

 という方、https://github.com/jjhelmus/berryconda のREADME.mdが正確ですので、できればそちらを参考にしてください。ただ、現状ではBerry Condaについての日本語ページが全くないようなので、念のためここにインストール方法を書いておきます。

0. 初めに

 Berry CondaはRaspbianのバージョンがjessieでないと保証していないようです。
 バージョンを調べるには、

$cat /etc/debian_version

として、

8.0

と出力されればjessieであるとわかります。8.1など、8から始まるならjessieです。
 ここでもしjessieでなければ、Berry Condaは保証されません。

1. インストーラをRaspberryPiにダウンロードする

自分のRaspberryPiのモデルに合わせてBerrycondaのバージョンを選択します

  • RaspberryPi 2 または 3 の場合はarmv7lインストーラを使います
  • RaspberryPi 1 または Zero の場合はarm6lインストーラを使います

また、使うpythonのバージョンも選択することができます。

  • python2.7で使いたい人はBerryconda2を選択してください
  • python3.6で使いたい人はBerryconda3を選択してください

以下にリンクを貼っておきますが、心配な方は公式ページでダウンロードしましょう。

armv7l installers (Raspberry Pi 2 or 3)

armv6l installers (Raspberry Pi 1 or Zero)

私の場合、RaspberryPi3にpython3.6を入れたかったので、Berryconda3-2.0.0-Linux-armv7l.shを選択しました。

2. インストーラを実行する

インストーラはそのままでは実行できません。
ターミナルからインストーラのあるディレクトリまで行きます。そこで、

$chmod +x Berryconda3-2.0.0-Linux-armv7l.sh
$./Berryconda3-2.0.0-Linux-armv7l.sh

とするとインストールが始まります。ここで、Berryconda3-2.0.0-Linux-armv7l.sh はダウンロードしたファイルですのでバージョンなどによって適宜変えてください。

 実行が始まると、

  • 初めに、CUIでライセンスを表示しだします。Enter を押すと下の行に進んでいって、最後まで行くとライセンスに承諾するかと聞かれるので、承諾するなら yes と打って Enter キーを押します。
  • 次に、Berry Conda のためのディレクトリの場所は usr の home の下でいいかみたいなことを聞かれるので、良ければEnterキーを押します。特に希望があれば、指示に従いながら変更してください。
  • 最後に、.bashrc にPATHを追加していいかと聞かれるので、競合するソフトウェアなどなさそうなら追加していいと思います。

3. 確認

 インストーラの実行が終わったら新しいターミナルを立ち上げて、

$python -V

などとしてpythonのバージョンを確認してみましょう。3.6になっていたら成功です。
 あとは通常のcondaと同様に操作が可能です。Anacondaと違って初めはほとんどパッケージが入っていません。
 入っているパッケージは、

$conda list

などで確認できます。

 condaの使い方は、

などを見てください。

終わりに

 初投稿です。記事を投稿するのはやはり大変ですね。
 Berry Condaでしばしば表記揺れがありますが、できるだけ公式ページに準拠しています。

 このページで初めてBerry Condaを知りましたが、berrycondaで検索しても英語のページばかり35件しかヒットしなかったので紹介させていただきました。

 余談ですが、僕はminicondaを既に入れていた場合の方法を見逃していて、一度minicondaをアンインストールしてBerry Condaを入れました。ですので、実はminicondaのままrpiのchannelからpython3.6を入れる方法は試していません。
 需要があるかわかりませんが、minicondaのアンインストール時に参考にしたページを貼っておきます。このページではminiconda用のPATHの位置が~/.bashrcだとか~/.bash_profileだとか書いていますが、私の環境では~/.profileの中にありました。

 さらに余談ですが、作者のJ.J.Helmus氏のGitHubページをみていると、Anaconda, Incと書かれていました。Anaconda謹製といっても過言ではありません(過言です)。いずれAnacondaのページからもリンクが貼られるといいですね。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away