MacでNEURONをPython3で動かす
神経回路や神経活動を模倣できるオープンなシミュレーション「NEURON」のpython環境を導入をしてみたのでメモを残しておきます。試した環境はMac OS XのYosemite(10.10.5)、homebrewでインストールしたpython3.4.3です。
参考サイト(公式インストール手順)
Compiling the standard distribution under OS X | NEURON
必要なライブラリをインストール
WindowsやLinuxはpip3 install neuron
でいけるらしいですが、残念ながらMacはサポートされていないので自分で色々揃える必要があります。
ライブラリを揃えるために、便利なhomebrew
を使用します。
MacOSX - パッケージ管理システム Homebrew - Qiita
brew install autoconf brew install automake brew install libtool brew install openmpi
インストールの準備
最初にwhich gcc
でMacデフォルトのgcc(/usr/bin/gcc)が使われることを確認しておきます。このgccを利用しないと並列環境関連のコードのコンパイルでエラーが出ます。
which gcc
# /usr/bin/gcc
続いてインストール先のディレクトリを適当に作っておきます。NEURON-7.4
のバージョンは最新のものにしておくと無難です。
export IDIR=/Applications/NEURON-7.4 mkdir $IDIR mkdir $IDIR/iv mkdir $IDIR/nrn
ivをインストール
下記サイトのiv-mm.tar.gz
からivのソースファイル等をダウンロードします。
Get the standard distribution's source code | NEURON
試したタイミングではバージョン19でしたが、最新のものを使うのが無難だと思います。その際は下記コマンドも適宜変更する必要があります。
cd iv-19 sh ./build.sh ./configure --prefix=$IDIR/iv make make install
nrnをインストール
pipを利用していると、このインストールでエラーが出るので対処しておきます。pipのprefixのデフォルト値が悪さするようです。
参考 : python - DistutilsOptionError: must supply either home or prefix/exec-prefix -- not both - Stack Overflow
ホームディレクトリ直下に.pydistutils.cfg
を作成(~/.pydistutils.cfg
)し、次のように編集します。
[install] prefix=
では、コンパイル&インストールです。--with-nrnpython
の後に自分の利用したいpythonを書きます。--with-paranrn
がないと、後々エラーが出ます。
cd ../nrn-7.4 sh ./build.sh ./configure --prefix=$IDIR/nrn --with-iv=$IDIR/iv --with-nrnpython=python3 --with-paranrn make make install make after_install
pythonで使えるようにする
まず、出来上がった実行ファイルにパスを通します。
ホームディレクトリ直下に.bash_profile
(~/.bash_profile
)を作成し、以下を追加します。
export $IDIR=/Applications/NEURON-7.4 export IV=$IDIR/iv export N=$IDIR/nrn export CPU=x86_64 export PATH=$IV/$CPU/bin:$N/$CPU/bin:$PATH
最後に、できたneuronモジュールをPATHの通っている適当な場所に配置します。
cd /usr/local/lib/python3.4/site-packages ln -s /Applications/NEURON-7.4/nrn/lib/python/neuron
これでnrngui -python
で起動したり、python3
やipython3
で起動後にimport neuron
できるようになるかと思います。
GoogleAdMobAdsSdkからgradleのAdMobに変更する
最初にbuild.gradle内のcompile files('libs/GoogleAdMobAdsSdk-6.4.1.jar')を消去。
プロジェクトのbuild.gradle
のdependencies
に以下を追加
dependencies { // something compile 'com.google.android.gms:play-services:8.1.0' }
ついで同ファイルの最初に以下を追加
apply plugin: 'com.google.gms.google-services'
更に全体のプロジェクトファイルを統括する(?)build.gradle
に以下を追加
dependencies { classpath 'com.android.tools.build:gradle:1.3.0' classpath 'com.google.gms:google-services:1.3.+' }
最後にAndroidManifest.xml
内の
<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
とりあえずこれでコンパイルエラーが変わると思います。
gitで「Permission denied (publickey).」と言われた時にやるべきこと一覧
何度も何度も怒られては対処法を調べて数分を犠牲にしてしまうので、やるべきことをリスト化しました。
OS環境はMac OS X 10.10
です。
ssh-agentに登録する
とりあえずこれで大抵の場合は解決できます。
ssh-add ~/.ssh/[rsaファイル名]
push先のリンクを確かめる
GitHub for Macアプリを使っていると、gitリポジトリのリンクが違っていてこのエラーが出る時があります。
対象のローカルリポジトリの.git
->config
を開いて、[remote "origin"]
下のurl =
にgit@
で始まるリンクが書かれているか確かめます。
もしhttps:
などで始まっていればgit@
で始まるものに変更します。
キーのパーミッションを変えておく
たまにキーのパーミッションのせいでこのエラーが出ることがあります。chmodでパーミッションを変更しましょう。
chmod ~/.ssh 700 chmod ~/.ssh/* 600
公開鍵(〜.pub)を登録しているか確かめる
複数PCで管理していたり、GitHub for Macアプリを使ってたりすると、公開鍵を登録し忘れている時がたまにあります。
このページで登録を確認できます。 Sign in · GitHub
もしなければ、この辺りを参考に登録しましょう。
http://qiita.com/Mitsunori_Tsukada/items/6886f1f28d9485484822:ttile