Hatena::ブログ(Diary)

断章10100

2014/07/22

トラックバック - http://d.hatena.ne.jp/naka-06_18/20140722

2014/07/21

OCaml と末尾再帰

| 14:17 | OCaml と末尾再帰を含むブックマーク OCaml と末尾再帰のブックマークコメント

末尾再帰とは各再帰処理で、計算結果と再帰処理を行い、再帰の末端ですぐ計算結果を返せる状態になっていること。

続きを読む

トラックバック - http://d.hatena.ne.jp/naka-06_18/20140721

2014/06/28

Vim のソースビルド、セットアップ手順

21:59 | Vim のソースビルド、セットアップ手順を含むブックマーク Vim のソースビルド、セットアップ手順のブックマークコメント

vim gtk2版gvimビルドして、 /opt/vim/<tag> にインストール、 neobundle のセットアップを行う。

環境

Ubuntu 14.04 LTS x86_64

1. 必要なソフトウェアの事前インストール

$ sudo apt-get build-dep vim
$ sudo apt-get install \
  libxmu-dev libgtk2.0-dev libxpm-dev \
  libperl-dev python-dev python3-dev ruby-dev \
  lua5.2 liblua5.2-dev luajit libluajit-5.1

2. ソースの取得、ビルドインストール

$ hg clone https://vim.googlecode.com/hg/ vim
$ cd vim
$ hg tags | less  # 現在有効なタグを出力する。
$ sudo mkdir -p /opt/vim/<tag>
$ hg up -r <tag>  # いずれかのタグにアップデートする。
$ ./configure \
  --prefix="/opt/vim/<tag>" \
  --with-features=huge --enable-gui=gtk2 \
  --enable-perlinterp --enable-pythoninterp \
  --enable-python3interp --enable-rubyinterp \
  --enable-luainterp --with-luajit \
  --enable-fail-if-missing
$ make -j 3       # 2コアだったので。
$ sudo make install

3. 環境変数の整備

以下の環境変数を profile などで設定する。

_vim="/opt/vim/<tag>"
export VIM="$_vim/bin"
export VIMRUNTIME="$_vim/share/vim/vim74/"  # vim のバージョンに合わせて読み替えること。
export PATH="$VIM:$PATH"
unset _vim

4. neobundle.vimインストール

$ mkdir -p ~/.vim/bundle
$ git clone github.com:Shougo/neobundle.vim.git ~/.vim/bundle/neobundle.vim

参照

トラックバック - http://d.hatena.ne.jp/naka-06_18/20140628

2014/06/06

emacs の cmmi / cask + pallet のインストール / evil のインストール

21:34 | emacs の cmmi / cask + pallet のインストール / evil のインストールを含むブックマーク emacs の cmmi / cask + pallet のインストール / evil のインストールのブックマークコメント

環境

1. cmmi (configure / make / make install)

まずは cmmi でシステムの /opt/emacs/24.3 に emacs 24.3 をインストールします。

1. 最初に依存関係を解消しておきます。

$ sudo apt-get install build-essential
$ sudo apt-get build-dep emacs23
$ sudo apt-get install libmagickwand-dev libselinux1-dev libgnutls-dev libxml2-dev

2. ソースをローカルに取得します。

$ wget ftp://ftp.riken.jp/GNU/gnu/emacs/emacs-24.3.tar.xz
$ tar xf emacs-24.3.tar.xz

3. configure します。 /opt/emacs/24.3 配下にインストールしたいので、 prefix で指定しています。

$ cd emacs-24.3
$ sudo mkdir -p /opt/emacs/24.3
$ ./configure --prefix="/opt/emacs/24.3"

4. make, make install

$ make
$ sudo make install
$ export PATH="/opt/emacs/24.3/bin:$PATH"
$ hash -r

5. PATH を通します。 .bashrc などに以下を追加します。

export PATH="/opt/emacs/24.3/bin:$PATH"

2. cask + pallet

次に、 cask と pallet をインストールし、パッケージ管理の仕組みを組み上げます。

1. cask をインストールします。

$ curl -fsSkL https://raw.github.com/cask/cask/master/go | python

2. .bashrc などに以下を追加します。

export PATH="/home/tomohiro/.cask/bin:$PATH"

3. cask を初期化します。

$ export PATH="/home/tomohiro/.cask/bin:$PATH"
$ hash -r
$ cask upgrade-cask
$ cd ~/.emacs.d
$ cask init

4. 作成されたCaskファイルの末尾に以下を追記します。

(depends-on "pallet")

5. pallet をインストールします。

$ cask install

6. ~/.emacs.d/init.el の末尾に以下を追記します。

(require 'cask "~/.cask/cask.el")
(cask-initialize)
(require 'pallet)

3. evil

最後に evil をインストールします。

1. 最初に ~/.emacs.d に移動します。

$ cd ~/.emacs.d

2. Cask ファイルの末尾に以下を追記します。

(depends-on "evil")

3. evil をインストールします。

$ cask install

4. emacs に evil を認識させるため、 ~/.emacs.d/init.el の末尾に以下を追記します。

(require 'evil)
(evil-mode 1)

X. 参考

Y. 履歴

1. cmmi が configure / make / make install であることを記載

トラックバック - http://d.hatena.ne.jp/naka-06_18/20140606

2014/03/22

X41 にパーティション区切って FreeBSD 入れたけどブートできね

| 23:57 | X41 にパーティション区切って FreeBSD 入れたけどブートできねを含むブックマーク X41 にパーティション区切って FreeBSD 入れたけどブートできねのブックマークコメント

マシンスペック

どうやって入れたか

もともと SSD 丸ごと Debian/i386 を入れていたが、 FreeBSD/i386 も試してみたくなり、パーティションを 20GB くらい区切って入れようと考えた。


パーティションの整理は linux mintインストールディスクを用意し、 gparted で領域を縮小した。


インストールは下記ページを参照にインストールした。


ssd は ada0 として認識された。


(8) にて以下の感じで設定。

# gpart add -t freebsd ada0
# gpart create -s BSD ada0s3
# gpart add -s 1G -t freebsd-ufs ad0s3
# gpart add -s 42 -t freebsd-swap ada0s3
# gpart add -t freebsd-zfs ada0

grub の shell で ls してもパーティション ada0s3 見つからなそうだし、無理かなと。

grub の設定とか仕様把握できておらず、すべて手探りってのが、もうね。

トラックバック - http://d.hatena.ne.jp/naka-06_18/20140322