Fork me on GitHub

cuspy memo


バター猫のパラドックス

2007/08/28 Tuesday 02:38:12

バター猫のパラドックス – Wikipedia より

それらは、猫が地面に向かって落ちるとともに落下速度が下がり、回転し始め、トーストのバターが塗られた面と猫の足の両方が着地しようとするため高速で回転しながら地面から少し上で浮いたところで安定状態になるだろうと提案する。

やった!、ネコ発電で夏のエネルギー不足問題も解決したも同然。

No comments yet.

Leave a comment

You must be logged in to post a comment.

panda のコンパイルエラーとその対処

2007/08/27 Monday 23:29:01

PDF生成ライブラリの panda(0.5.4) をコンパイルしようとしたら

gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -DHAVE_LIBPNG -DHAVE_LIBTIFF -DHAVE_LIB JPEG -MT objects.lo -MD -MP -MF .deps/objects.Tpo -c objects.c -fPIC -DPIC -o . libs/objects.o
objects.c: In function ‘panda_newobject’:
objects.c:102: error: invalid lvalue in assignment

こんな感じのエラーが出るので

diff panda-0.5.4.orig/objects.c panda-0.5.4/objects.c
102c102
< (panda_child *) created->cachedLastChild = NULL;

> created->cachedLastChild = NULL;

こんな感じに書き換えたメモ。
そんな事より panda って PDF を作るだけのライブラリのプロジェクトだと思っていたらパーサーも作っているということを今、知った。

http://www.stillhq.com/extracted/pandalex/

あとで試してみよう。

No comments yet.

Leave a comment

You must be logged in to post a comment.

ひっそりとSSHログインする方法

2007/08/25 Saturday 23:03:44

Giving yourself a quieter SSH login

http://www.debian-administration.org/articles/546

へー

% touch ~/.hushlogin

とするだけで SSHログインしたときの Last login: 〜が表示されなくなるんだ。
もちろん /var/log/wtmp にはちゃんと残っているのでログイン記録は last コマンドで確認できるんだけど、やっぱり毎回表示してくれる方が安心。
もしも突然意図せず Last login:が表示されなくなったりしたら要注意だな。

  1. Robert wrote related post…

    Silk posts and stories…

    Trackback by Robert wrote related post — 2008/06/19 Thursday @ 22:01:57

Leave a comment

You must be logged in to post a comment.

シソーラス辞書を買ってみた

2007/08/23 Thursday 02:30:23

インターネット上でのシソーラス(類義語)検索サービスといえば言語工学研究所が有名でよく使わせて貰ってたんだけど検索回数に制限があったりとイマイチ使い勝手が良くない。

そんでいろいろ調べていたら amazonで EPWING形式のシソーラス辞書が売られていることを発見。


EPWING版 CD-ROM 類義語使い分け辞典

これが今日届いたんだけど失敗だったかな、語彙数が少なすぎる。しかも ndtpd 経由で問い合わせると詳細が出てこないような気がする。
例えば以下のように ndtpc で検索してみると、

% ndtpc 絶えず
DICT: 類義語使い分け辞典
<307:a2>絶えず
■ 絶えず(たえず)・絶え間なく(たえまなく)

たったこれだけ。
付属してくる windows 用のビューアを使うと用例とかもっと詳細が表示されるみたいなんだけどそんなの使ってられないし困ったな。
プロトコル的にも詳細を引っぱってくる方法はなさそうなので最悪の場合 ndtpd に手を入れなくちゃならないかも。うげ-

※)この製品はネットワーク経由で使用するとライセンス違反だそうなのでもちろん ローカルホストの ndtpd に問い合わせてイルヨ。

  1. Robert wrote related post…

    Silk posts and stories…

    Trackback by Robert wrote related post — 2008/06/17 Tuesday @ 22:25:28

Leave a comment

You must be logged in to post a comment.

libxmlrpc-c で 非同期問い合わせ

2007/08/17 Friday 04:27:51

C言語で XML-RPC をしゃべる為のライブラリ libxmlrpc-c を使った非同期問い合わせについて。

また例のどう書く?ネタなんだけど、XML-RPC リクエストを大量に行う場合、シリアルに問い合わせを行うと、どうにもならないくらい遅かったので非同期問い合わせに書き直してみた。

libxmlrpc-c にはサーバーに同期的にブロックして問い合わせる関数 xmlrpc_client_call() の他に非同期で問い合わせを行う xmlrpc_client_call_asynch() が用意されている。

この非同期関数のサンプルコードをマネマネして書いてみたんだけど一向にパフォーマンスが向上しないので調べてみると、xmlrpc_client_call_asynch() の関数自体はノンブロッキングで帰ってきているが、実際の XML-RPC リクエストは 1っ発づつ送られていることが解った。

あれこれパラメーターを変えたりしてずいぶん悩まされた結果、答えはドキュメントに書いてあった。

http://xmlrpc-c.sourceforge.net/doc/libxmlrpc_client.html#concurrency_libwww

より

The asynchronous facility, in at least one experiment Bryan did, was rather disappointing used with the libwww transport. The no-wait call had no visible effect, and the RPC finishing function did each RPC serially (waits for one to complete before starting the next one). Because libwww is undocumented and its code too complex to read easily, Bryan did not determine if there are circumstances under which it behaves better.

libxmlrpc-c は transport(HTTP リクエストを送るレイヤのライブラリ)として、libwww と libcurl をサポートしているんだけど、デフォルトで使用される libwww の場合、非同期問い合わせは絶望的なんだそうな。libwww はアンドキュメンテッドな上コードが複雑すぎて非同期問い合わせに対応できなかったんだそうな。

で、debian package の libxmlrpc-c3 には libcurl の transport が組み込まれていなかったので、libxmlrpc-c-1.06.17 のソースをダウンロードしてきてコンパイルしようとすると

% ./configure —-disable-libwww-client
% make
gcc -o xmlrpc xmlrpc.o dumpvalue.o blddir/lib/util/cmdline_parser.o blddir/lib/util/getoptx.o blddir/lib/util/casprintf.o -Lblddir/src/.libs -lxmlrpc_client -lxmlrpc -L/usr/lib -lcurl -L/usr/lib -lgssapi_krb5 -lkrb5 -lk5crypto -lkrb5support -lcom_err -lresolv -lidn -lssl -lcrypto -ldl -lssl -lcrypto -lz -Lblddir/lib/expat/xmlparse/.libs -lxmlrpc_xmlparse -Lblddir/lib/expat/xmltok/.libs -lxmlrpc_xmltok -Lblddir/lib/libutil/.libs -lxmlrpc_util
blddir/src/.libs/libxmlrpc.so: undefined reference to `xmlCreatePushParserCtxt’
blddir/src/.libs/libxmlrpc_client.so: undefined reference to `xmlrpc_libwww_transport_ops’
blddir/src/.libs/libxmlrpc.so: undefined reference to `xmlParseChunk’
blddir/src/.libs/libxmlrpc.so: undefined reference to `xmlFreeParserCtxt’
collect2: ld returned 1 exit status

エラー。
expat の問題っぽいので試しに、XML パーサーを libxml に変えてみる

% ./configure —-disable-libwww-client —-enable-libxml2-backend
% make
gcc -o xmlrpc xmlrpc.o dumpvalue.o blddir/lib/util/cmdline_parser.o blddir/lib/util/getoptx.o blddir/lib/util/casprintf.o -Lblddir/src/.libs -lxmlrpc_client -lxmlrpc -L/usr/lib -lcurl -L/usr/lib -lgssapi_krb5 -lkrb5 -lk5crypto -lkrb5support -lcom_err -lresolv -lidn -lssl -lcrypto -ldl -lssl -lcrypto -lz -L/usr/lib -lxml2 -lz -lpthread -lm -Lblddir/lib/libutil/.libs -lxmlrpc_util
blddir/src/.libs/libxmlrpc_client.so: undefined reference to `xmlrpc_libwww_transport_ops’
collect2: ld returned 1 exit status

今度は違うエラー、眠い、xmlrpc というと XML-RPC リクエストをお手軽に問い合わせることが出来る便利ツールだったはず。debian package に含まれていない理由はこんなところかな。

configure を追っかけて tools/xmlrpc をビルドしないようにするためには —-disable-cplusplus を付ければよいことが解った。(tools/xmlrpc は C++じゃないのに!)

% ./configure —-disable-libwww-client —-enable-libxml2-backend —-disable-cplusplus
% make

この様にしてビルドした libxmlrpc-c で無事非同期問い合わせが出来ましたとさ。Happy!

  1. Robert wrote related post…

    Silk posts and stories…

    Trackback by Robert wrote related post — 2008/05/30 Friday @ 12:02:51

  2. Latest Site News…

    SweN, Latest Site News and Latest…

    Trackback by Latest Site News — 2008/06/03 Tuesday @ 05:36:04

  3. Latest Blog News…

    SweN, Latest Blog News and Latest…

    Trackback by Latest Blog News — 2008/06/03 Tuesday @ 05:36:46

  4. News…

    SweN, News and News…

    Trackback by News — 2008/06/03 Tuesday @ 05:37:26

  5. Sites News…

    SweN, Sites News and Sites…

    Trackback by Sites News — 2008/06/03 Tuesday @ 05:37:47

  6. Latest Sites News…

    SweN, Latest Sites News and Latest…

    Trackback by Latest Sites News — 2008/06/03 Tuesday @ 05:38:47

  7. Latest…

    TsetaL, Latest and Latest…

    Trackback by Latest — 2008/06/03 Tuesday @ 05:39:10

  8. Latest News…

    SweN, Latest News and Latest…

    Trackback by Latest News — 2008/06/03 Tuesday @ 05:39:26

  9. Blog News…

    SweN, Blog News and Blog…

    Trackback by Blog News — 2008/06/03 Tuesday @ 05:39:51

  10. Latest Refresh…

    HserfeR, Latest Refresh and Latest…

    Trackback by Latest Refresh — 2008/06/03 Tuesday @ 05:41:05

Leave a comment

You must be logged in to post a comment.

Next Page >