Just another Ruby porter,

〜2001年10月上旬〜


<Prev(,) | Next(.)> | Recent(/)>> | RDF

2001-10-01 (Mon)

Netscape6 sidebar

/.jpのsidebar はgoogleで簡単に見つかったが、yendotのはどこなんだろう? と思ったら croutonさんのとこ に情報があった。 実は既にsidebar自体はaddされてるんだけど、 どこから持ってきたのかすっかり忘れてて、 他のマシンに入れられなくて困っていたというか。

あ、sidebarじゃなくてサイドバーで探さなきゃいけない?


2001-10-02 (Tue)

version.h

なんか久し振りにversion.hが更新された。1.6.5リリース以来か。

RubyUnit 0.4.2, Win32OLE 0.3.1

更新。

Let's work on Windows support

爆発してるね。

Cygwinが2倍速いって話は [ruby-list:27694] だと思う。1.7ならそんなに差はないはず。

それはそれとして、InstallShield版はVC++かMinGWを使ったほうがいいんだろう。 こうなるとforkが使えないなんて些細な問題に思える。


2001-10-03 (Wed)

mswin32版の拡張ライブラリをMinGWで作る

昼間一応作りかたを書いて送ったんだが、なぜか届かないなあ。 思い出してここに書いとこう。

_ mswin32-ruby16.lib:

肝はlibmingw32-ruby16.aの代わりにmswin32-ruby16.libを使うだけ。 なのでMinGW版をインストールして

% cp mswin32-ruby16.lib d:/usr/local/lib/libmingw32-ruby16.a

のようにしてしまえばいい。で肝心のmswin32-ruby16.libは うささんのとこ から取ってこよう。

_ Win32OLE:

dllwrap時に-L.もしてるのでln -sするのもありだ。こっちをメールに書いた。

% mkdir mswin32; cd mswin32
% unzip ../ruby-1.6.5-i586-mswin32.zip
% unzip ../win32ole-0.3.1.zip
% cd win32ole
% ln -s ../lib/mswin32-ruby16.lib libmingw32-ruby16.a
% d:/usr/local/bin/ruby extconf.rb
% ruby -i~ -pe 'sub(/-bmingw/,"-mno-cygwin")' Makefile
% make
% ../bin/ruby -r./win32ole -ve 'p $"'
ruby 1.6.5 (2001-09-19) [i586-mswin32]
["./win32ole.so"]

Windows installer 1.6.5 beta testers needed

うーむ。Andyさん自身は議論に加わってないようだし、Cygwinのままなのかな?


2001-10-04 (Thu)

Apache on Solaris

Solaris 2.5なマシンにApacheをインストールした。

% ./configure --enable-shared=max
% make
% su
# make install

で、問題なくインストールできたはいいが、

# /usr/local/apache/bin/apachectl start

するとmod_env.soをロードするとこでundefinedになる。 ってことはhttpd自身のsymbolがexportされてないからか。 httpdを作るとこで-Wl,-Eを入れたらすんなり立ち上がった。 gcc 2.8.1とかbinutilsが古いのか? ちゃんとこっちもメンテせんとまずいな。


2001-10-05 (Fri)

RIP

freshmeat でreiserfs, floppyをキーに検索すると、 RIP が見つかった。これでReiserFSなパーティションを作ることが可能。 rescue diskとしても使えるので一枚用意しておくことにしよう。

SlackReiser

これを使えば無理矢理PlamoもReiserFSにインストールできるかなあ?


2001-10-06 (Sat)

setup.exe

Cygwinでクロス環境を作っているから、 setup.exeも当然同時に作られていると思ったらできてない。 不思議に思い確認してみるとcygwin-1.1.8-2-src.tar.gzにはそもそも cinstall/がないのであった。って そう 自分で答えてるじゃん。 だが、cygwin-1.3.3-2-src.tar.bz2にはちゃんと入っているのであった。 つうわけで、1.3.3-2で試すことにする。

% tar xfv cygwin-1.3.3-2-src.tar.bz2
% cd cygwin-1.3.3-2
% mkdir obj; cd obj
% CFLAGS=-Os CXXFLAGS=-Os ../configure \
  --target=i686-pc-cygwin \
  --host=i686-pc-cygwin \
  --build=$(../config.guess) \
  --prefix=/usr/local/cygwin
% make
..../bin/ld: cannot find -lstdc++
collect2: ld returned 1 exit status

あれ?肝心のsetup.exeを作るとこでエラーだ。 mingw32用のlibstdc++.aはMinGW Projectから取ってくる必要があるよね。 Cygwinで完結してないんだけど、これでいいの? とりあえず/usr/local/cygwin/lib/mingwに用意して解決させる。

cinstallは1.3.3になって初めて含まれるようになったようだ。 1.3.2-1には入ってない。


2001-10-07 (Sun)

Cygwin or MinGW?

例のruby-talk MLでの議論が元で、CygwinとMinGWはどっちがいいと思う? socketのEINVAL問題とかなぜCygwin版のほうが速いんだみたいな感じの内容のメールが来た。 とりあえず俺自身は会社でCygwinを使ってるが、 常に不安定だしMinGW版のほうがいいんじゃない? でも家ではWindowsは使ってないし、 Ruby Binariesはすべてクロスコンパイルしてるから、 本格的には使ってないんだけど、と返しといた。

ruby-talk ML

1750: ruby-talk.0101
1608: ruby-talk.0102
1609: ruby-talk.0103
1048: ruby-talk.0104
1629: ruby-talk.0105
1026: ruby-talk.0106
1776: ruby-talk.0107
1737: ruby-talk.0108
1208: ruby-talk.0109

不思議なことに1800通/月までは行かない。

spam

最近やけにspamが多い。英語が多いということはcomp.lang.rubyがらみか?


2001-10-08 (Mon)

SlackReiserでPlamoをインストール

setupする前にPlamoのCD-ROMをmountしておけば、 sourceでpre-mountを選んで先に進める。 文字は当然化けるが、何度かPlamoをインストールしてればわかる。 パッケージ名はasciiだし。

mingw(mswin32)版Ruby 1.7は遅いのか?

例の人と何度かやりとりをしたらうささんとこの1.7は遅いと言われてしまった。

Yikes! I tried my little benchamrk, and the 1.71 snapshot ran *very*
slowly: 4min21s VS 18s (1.65 cygwin) or 36s (1.65 mswin32)
Maybe this is a debug build? Anyway, it's not released yet, so let's
not complain prematurely.

うーむ。これは尋常じゃない遅さだ。どんなbenchmarkなのかわからないが。

で、mingwで試そうと思ったら、

% ./miniruby -ve 'system "date"'
ruby 1.7.1 (2001-10-05) [i386-mingw32]
Mon Oct  8 14:17:22  2001
-e:1:in `system': undefined method `allocate' for false (NoMethodError)
        from -e:1

てな感じで、ext/以下がmakeできなくなってた。 allocate機構が導入されてからできないのかなあ。 これはcrossでmakeしてるとわからないから、 たまにはnativeでmakeしないといけないね。

それはそれとして、とりあえずminirubyでbenchmarkしてみる。 単に-nを使いgetsするだけの簡単なものだ。

% ls -l ruby-talk.0101
-rw-r--r--    1 watanabe ruby      5663931 Oct  8 14:21 ruby-talk.0101
% time cygwin16/miniruby -vne '' ruby-talk.0101
ruby 1.6.5 (2001-10-05) [i386-cygwin]
2.75s real  0.00s user  0.00s sys  0% cpu
% time cygwin/miniruby -vne '' ruby-talk.0101 
ruby 1.7.1 (2001-10-05) [i386-cygwin]
3.13s real  0.00s user  0.00s sys  0% cpu
% time mingw16/miniruby -vne '' ruby-talk.0101
ruby 1.6.5 (2001-10-05) [i386-mingw32]
89.86s real  0.00s user  0.00s sys  0% cpu
% time mingw/miniruby -vne '' ruby-talk.0101
ruby 1.7.1 (2001-10-05) [i386-mingw32]
6.37s real  0.00s user  0.00s sys  0% cpu
% time mswin32/bin/ruby -vne '' ruby-talk.0101
ruby 1.7.1 (2001-09-01) [i586-mswin32]
6.04s real  0.00s user  0.00s sys  0% cpu

1.7.1では格段に速くなってる。Cygwinには負けるが。 やっぱどんなbenchmarkをしたのか聞いてみないとだめか。

`system': undefined method `allocate' for false (NoMethodError)

結局このエラーは2001-10-04から出るようになったようだ。 process.cの最後の#ifndef NTの中でrb_cProcStatusを初期化してるのが原因か? と思ったらprocess.cは最近いじられてないな。 単に#ifndef NTを外しちゃってもいい感じだが、 いずれにしてもここはちょっと変?

ruby-gtk: freq of mouse events: linux vs win nt

いやdjgppじゃ無理だって。何を持って行ったんだろう? てゆかmouse eventsの頻度はGIMPを移植した人に聞いたほうがいいでしょう。


2001-10-09 (Tue)

benchmark

例の人というのは実は この人 で、 benchmarkはその最後に示されている URL だそうだ。

試してみるとmswin32,mingw32には関係なく1.7.1だと確かに遅くなる。


2001-10-10 (Wed)

DHCP 3.0

なるほど

ddns-update-style interim;

でDynamic DNSってわけか。

Linux 2.4.xでconfigureすると

System Type: linux-2.2

と表示される。見た感じだと気にしなくてもよさそう。

kill -HUPが効かないのはなぜ?と思ったらman dhcpdに書いてあった。

Note:  We get a lot of complaints about this.   We realize
that it would be nice if one could send a  SIGHUP  to  the
server  and  have  it  reload  the database.   This is not
technically impossible, but it would require a great  deal
of work, our resources are extremely limited, and they can
be better spent  elsewhere.    So  please  don't  complain
about  this  on the mailing list unless you're prepared to
fund a project to implement this feature, or  prepared  to
do it yourself.

<Prev(,) | Next(.)> | Recent(/)>> | RDF


WWW を検索 jarp.does.notwork.org を検索

わたなべひろふみ
Key fingerprint = C456 1350 085F A320 C6C8 8A36 0F15 9B2E EB12 3885
Valid HTML 4.01!