Lua5.1.4をインストールする
ソースコードを取得して、ビルドする。
いつものごとく make して、make install。INSTALL_TOPにパスを設定しない場合は /usr/local になります。
さくっと終わると思ったけれど、readline-devel と ncurses-devel がないとコンパイルできませんでした。そのときのエラーメッセージと対応は以下参照。
$ tar zxf lua-5.1.4.tar.gz $ cd lua-5.1.4 $ make linux $ make install INSTALL_TOP=~/opt/lua-5.1.4
readline がない
以下のようなメッセージが出力されたときは readline-devel がインストールされていません。readline-devel をインストールします。
メッセージ
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lua.o lua.c lua.h:16 から include されたファイル中, lua.c:15 から: luaconf.h:275:31: error: readline/readline.h: そのようなファイルやディレクトリはありません luaconf.h:276:30: error: readline/history.h: そのようなファイルやディレクトリはありません lua.c: In function ‘pushline’: lua.c:182: 警告: implicit declaration of function ‘readline’ lua.c:182: 警告: assignment makes pointer from integer without a cast lua.c: In function ‘loadline’: lua.c:210: 警告: implicit declaration of function ‘add_history
対応
# yum install readline-devel.i386
ncurses がない
以下のようなメッセージが出力されたときは ncurses-devel がインストールされていません。ncurses-devel をインストールします。
メッセージ
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lua.o lua.c gcc -o lua lua.o liblua.a -lm -Wl,-E -ldl -lreadline -lhistory -lncurses /usr/bin/ld: cannot find -lncurses collect2: ld はステータス 1 で終了しました
対応
# yum install ncurses-devel.i386
Lua 読み込んで実行する - C に Lua を組み込む
Lua のソースコードを読み込んで実行する C プログラム。
インストールした Lua の動作確認用です。libdl.so と libm.so リンクする必要があるので、リンク時に指定すること。
ソースコード
#include <stdio.h> #include <stdlib.h> #include "lua.h" #include "lualib.h" #include "lauxlib.h" int main (int argc, char *argv[]) { lua_State *L; if (argc < 2) { fprintf(stderr, "usage: %s filename\n", argv[0]); exit(1); } L = luaL_newstate(); luaL_openlibs(L); if (luaL_dofile(L, argv[1])) { fprintf(stderr, "error: %s\n", lua_tostring(L, -1)); lua_close(L); exit(1); } lua_close(L); exit(0); }
コンパイル
$ gcc -c main.c -I$HOME/opt/lua-5.1.4/include $ gcc -o main main.o -L$HOME/opt/lua-5.1.4/lib -llua -ldl -lm
Google Chrome OS について思うこと(メモ)
自分用のメモ書きです。
年内にそのソースコードを公開します
2010 年後半には Google Chrome OS 搭載ネットブックが市場に登場
スピードと使いやすさ
- 既存の仕組みから、いらないものを除いていく?
- 新しい仕組みに、必要なものだけをのせる?
- ウィンドウシステムを独自のものにするみたい
セキュリティアーキテクチャを全面的に設計し直す
- サンドボックス上で動作する?
- Google Chrome がサンドボックスでセキュリティを向上しているように?
参考
メモリ上に DB を作る (SQLite3)
メモリ上に DB を作って、データを入れたり、参照したり。
#!/usr/bin/ruby require 'rubygems' require 'sqlite3' sql = <<EOS create table tbl_test ( id text, name text ); EOS db = SQLite3::Database.new(":memory:") db.execute(sql) db.transaction { |t| 3.times do |i| t.execute("insert into tbl_test (id, name) values(?, ?)", i, "user#{i}") end } i = 0 db.execute('select * from tbl_test') do |row| i += 1 puts "#{i}, #{row.join("\t")}" end db.close
表紙買い
- 作者: 小島寛之,十神真,ビーコム
- 出版社/メーカー: オーム社
- 発売日: 2005/12/01
- メディア: 単行本
- 購入: 26人 クリック: 755回
- この商品を含むブログ (25件) を見る
カンバン・ゲーム - 第 4 回 すくすく・スクラム
参加できませんでしたので、動画を見て感想を書いてみました。
ざっくり内容のまとめ。
- かんばんのお話
- リーン思考を参考にしたリーン・カンバンが流行
- それをゲームで体験してもらう
- リーン & カンバン
- ムダを認識する
- カンバンは「プル生産」 -> 実は(許容量?流れ?)を制限することによって成り立つ
- カンバンのゲームプレイ
感想
- リーンカンバンとそのゲームの説明がほとんどだったので、実際ゲームをやってみないと何とも言えないところはあります。
- 最初のルールと制約をつけたルールでプレイしたけれど、その差は動画を見ているだけはよくわからなかった。プレイしてみてわかること?なのかな。
- 制約のつけ方が生産工程っぽいのがリーンをベースにしているからかな。
- 進捗記録は、記入する項目が多かったが、後の見える化に繋がる材料なのかもね。
- 「チームで担当者を決める・変更する」で、担当の壁を越えた何かに気づけるかも。担当を替えるというのはなかなかないから、いい体験になるかな。
- ダイスは D6 なのかな?4 面や 8面をバラバラに持たせて使うと担当者の能力に変化があって面白くなったり・・・ならなかったりw 今回の本質ではないけれど。
Ruby/DL で Mecab を使う
mecab のサンプルにあった一番簡単そうなものを Ruby/DL で書いてみた。
お試し程度で使うなら Ruby/DL はいい方法かもね。
ソースコード
#!/usr/bin/ruby require 'dl/import' module Mecab extend DL::Importable dlload 'C:\Program Files\MeCab\bin\libmecab.dll' extern "mecab *mecab_new2(const char *)" extern "const char *mecab_sparse_tostr(mecab_t *, const char *)" end s = "太郎は次郎が持っている本を花子に渡した。" mecab = Mecab.mecab_new2("") result = Mecab.mecab_sparse_tostr(mecab, s) puts "INPUT : [#{s}]" puts "RESULT: [#{result}]"
出力結果
INPUT : [太郎は次郎が持っている本を花子に渡した。] RESULT: [太郎 名詞,固有名詞,人名,名,*,*,太郎,タロウ,タロー は 助詞,係助詞,*,*,*,*,は,ハ,ワ 次郎 名詞,固有名詞,人名,名,*,*,次郎,ジロウ,ジロー が 助詞,格助詞,一般,*,*,*,が,ガ,ガ 持っ 動詞,自立,*,*,五段・タ行,連用タ接続,持つ,モッ,モッ て 助詞,接続助詞,*,*,*,*,て,テ,テ いる 動詞,非自立,*,*,一段,基本形,いる,イル,イル 本 名詞,一般,*,*,*,*,本,ホン,ホン を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ 花子 名詞,固有名詞,人名,名,*,*,花子,ハナコ,ハナコ に 助詞,格助詞,一般,*,*,*,に,ニ,ニ 渡し 動詞,自立,*,*,五段・サ行,連用形,渡す,ワタシ,ワタシ た 助動詞,*,*,*,特殊・タ,基本形,た,タ,タ 。 記号,句点,*,*,*,*,。,。,。 EOS ]