From: "KISHIMOTO, Makoto" Date: 2009-07-08T09:19:29+09:00 Subject: [ruby-list:46184] Re: ruby-chasen in 64bit machine > PS. amd64 にして私は愛用の jvim+onew を諦めました。。なんといってもポインタを > int に代入しているらしき警告だらけで、どう見てもそれが原因で core dump > していたので。。(個人的には sizeof (int) != sizeof (void *) な gcc に > 疑問を感じているけど、それだけ Cのコードが int が32ビットに依存している > ものばかりなんでしょうね。) > rubyや chasen周りではそういった警告は見てないと思います。 > (見逃している可能性はありますが。) ports で ruby-chasen のビルド中に ===> Building for ja-ruby18-chasen-1.6_2 cc -I. -I. -I/usr/local/lib/ruby/1.8/amd64-freebsd7 -I. -I/usr/local/include/chasen -I/usr/local/include -fPIC -O2 -fno-strict-aliasing -pipe -fPIC -c chasen.c chasen.c: In function 'f_chasen_sparse_tostr': chasen.c:43: warning: cast to pointer from integer of different size chasen.c: In function 'f_chasen_fparse_tostr': chasen.c:57: warning: cast to pointer from integer of different size cc -shared -o chasen.so chasen.o -L. -L/usr/local/lib -Wl,-R/usr/local/lib -L/usr/local/lib -Wl,-R/usr/local/lib -L. -rdynamic -Wl,-soname,chasen.so -Wl,-R -Wl,/usr/local/lib -L/usr/local/lib -lruby18 -lchasen -lstdc++ -lpthread -lrt -lcrypt -lm -rpath=/usr/lib:/usr/local/lib -pthread と、warning 出てないですかね? chasen.h を include しておらず、(Cのデフォルトの)int の返り値を、char * に キャストしているコードがあって、そこで出ています。 GCCのバージョンの違いかな、と思ったけど、そうでもないかな。 $ gcc --version gcc (GCC) 4.2.1 20070719 [FreeBSD]