アットウィキロゴ

ART-Linuxの便利ツール

個人的に一番書いておきたい備忘録w

ART-Linuxを使うに当たって,便利ツールをいろいろ準備する.
すべてUbuntu10.04向けな情報である.

gccを入れておく

なんとLinuxのくせに開発環境が入っていない.
G++4.4をSynapticからインストールする.

ついでにmakefileの依存関係をなんとかしてくれる
makedependをインストールしておく.g++の-MMオプションを使う人はいらない.
# sudo apt-get install makedepend

Subversionを入れる

バージョン管理ツールとして,RapidSVNとmeldを入れた.
# sudo apt-get install rapidsvn
# sudo apt-get install meld

RapidSVNを起動して
表示→設定→プログラム→比較ツール→
上の空欄(参照の左)に [/usr/bin/meld]
引数に [%1 %2] を入力
で,meldを差分表示ツールとして登録可能

ついでにRapidSVNではSubversion自体は入らないので,
# apt-get install subversion
もしておくと困ったときに使える.

geditにshift-jisエンコーディング対応させる。

Windowsがメインユーザである私は,エディタにはgeditを使っている.
いろんな意味でメモ帳みたいなものだからである.
しかし,SHIFT-JISには最初対応していないので,文字化けする.
ターミナルから、
# sudo gconf-editor
して、apps -> gedit2->preferences->encoding
を開き、auto_detectに [SHIFT_JIS]を追加する。
ねんのため上の方にもっていっておく。

キーを右クリックして、デフォルト、かつシステムの設定にしておく。
geditを開き直せばあらふしぎ。できなかったらググってください.

バックアップを考える

制御システムでは,新しいドライバのインストールや改造が
たびたびになるが,そのたびにシステムを壊していると何度もセットアップが必要になる.
バックアップを取っておきたいところ.
Linuxのバックアップユーティリティ、remastersysを使ってみる.
システム→システム管理→アップデートマネージャ→設定→他のソフトウェア→追加として、
deb http://www.geekconnection.org/remastersys/repository karmic/
を、APTラインとして追加する.

一度ここで再起動して、synapticでremastersysを検索、インストールする.

remastersysを起動し、backupする./home/remastersys/remastersys に、
cunstombackup.isoとして保存される.
これをどこかにコピーしておくか,右クリック->書き込みでリストアdvdを書き込む.

リストアしたい場合、これを書き込んだDVDを入れて起動して、
インストール(boot : install)すればよいと思われる。
動作確認ならば、boot: live でいいかな??
ただし、デフォルトでは通常linuxが起動します…
install後に、StartupManagerで変更してください。

Ubuntu で、suコマンドを使用可能にする

毎回sudoを打つのは非常に面倒.
また,制御でハードウェアを直接たたく場合などは
rootでログインしたいとことだが,Ubuntuではrootにパスワードがなく,ログインできない.

そこでrootにパスワードを設定すればsuコマンドが使える.らしい.
# sudo passwd root
→sudoのためのパスワードの後、設定したいパスワードを二回入力

これでターミナルを開いたあと、# su して、パスワードを入力すれば、
そのターミナルではsudoが不要になる.はず.

root権限のファイルをファイルブラウザで移動できるようにする

ファイルブラウザではroot権限の場所にファイルを移動できない。
GUIで、システム領域にファイルをいじいじする場合は、
# sudo nautilus
でファイルブラウザを起動し、アクセスすればよい。たぶん。
パネルに、カスタムアプリケーションを追加して、
上記コマンドを入れておくと、らくちんぽん。


boostをインストールする

制御用プログラムを使うに当たって,boostを準備する。
とっても便利なライブラリboost.
とりあえず最新版(執筆時ば1.47)をダウンロードして...

Boost C++ Libraries
http://www.boost.org/

ダウンロード後、アーカイブマネージャなどで
例えば/home/pa10/workspace下などに解答しておく。

# cd /home/pa10/workspace/boost_*
(*は、boost_1_47_0などのboostばーじょん)
でフォルダに入り、
# sudo sh bootstrap.sh
# sudo EXPAT_INCLUDE=/usr/include EXPAT_LIBPATH=/usr/lib ./bjam --without-mpi --prefix=/usr/local --without-python threading=multi install
でインストールと、ライブラリのコンパイルを行う。
(--without-pythonなどで例えばpythonなしにできる。時間とHDDの節約ね。)

コンパイル後、ライブラリへのパスを、環境変数に追加する必要がある。
# export LD_LIBRARY_PATH=/usr/local/lib
とする。ただし、再起動などすると環境変数が消えるので、
bashの起動時設定ファイルを下記のように開いて…
# sudo gedit ~/.bashrc
適当な場所(たとえば最初のコメントのすぐ後)に、下記を追加する。

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

これを保存して、ターミナルを立ち上げ直せばOK。
(注意! suしてrootになった状態で#sudo gedit ~/.bashrcしても
ユーザの設定ではなくrootの設定だけ変わってうまくいかないので、
ターミナルを起動してそのまま#sudo gedit ~/.bashrcすること。)

IT++を準備する


制御プログラムではvectorやmatrixの計算が必要になる.
いろいろな数学ライブラリはあるが,
boost/numericか,IT++を使うのが個人的にはブーム.
ここではIT++を使ってみる.
Matlab互換のパラメータ読み込みとか,インデックス操作がいい感じ.
欠点といえばvector×matrixが定義されていないことかな…
全部Matirxというのもいまいち残念だし…
あとは固定長vectorを使ったコンパイル時のサイズ解決ができないこと.
ロボット制御で,3次元や4次元のvectorを使うことが多い私にはちょっと不満ですが…

とりあえず使う分には便利なので入れ方をメモっておく.
なんと,Synapticで検索するだけ.Quickでは出てこないので
検索ボタンを押して「itpp」を検索して出てくるものを全部インストールするだけ.終わり.

自分のプログラムを作る際には,コンパイルフラグに,
# g++ `itpp-config --cflags` -o hoge hoge.cpp `itpp-config --libs`
などとするだけ.まぁ簡単.
Windowsだとclapackやcblasのライブラリをネットでゲットしてきたり,コンパイルする必要がある.



以上.何か便利に使う設定で忘れそうなことがあったら,随時この備忘録に追加します.


本日の来訪者: -
昨日の来訪者: -
来訪者累積: -

おなまえ
こめんと
最終更新:2011年09月29日 01:03