rcairo でセグメンテーション違反
環境
- VirtualBox on MacOS X 上の debian-etch
- libcairo2-dev は apt-get install
- ruby, gem は自前ビルドして ~/local にインストール
症状
下記の「Cairo::Context.new」でセグメンテーション違反が起こる。
require 'rubygems' require 'cairo' format = Cairo::FORMAT_ARGB32 width = 300 height = 200 radius = height / 3 surface = Cairo::ImageSurface.new(format, width, height) context = Cairo::Context.new(surface)
解決?
- gem でインストールした rcairo のバージョンが新しすぎたため?
- 1.7.0 が入っていた
$ gem list cairo *** LOCAL GEMS *** cairo (1.7.0)
- これをアンインストールし、ひとつ前のバージョン v1.6.3 (→ RubyForge: cairo: ファイルリスト)を入れるとセグメンテーション違反が起こらなくなった。
$ gem uninstall cairo $ gem install cairo -v 1.6.3