サイトアイコン Lonely Mobiler

twitterからmixiボイスにマルチポストするRubyスクリプトを導入した。

mixiボイスとかいうサービスが正式公開された様です。俺はtwitterのほうが使いたいので、twitterと同時postできるようなのないかなーと思いながらグーグルリーダーみてたらすぐ見つけたので導入した。それだけなら別にエントリーにするまでもないんだけど、インストールに手間取ったので作業メモということで。ちなみに俺の使っているUbuntuは標準でRuby入ってないし、俺自身あんまりRuby使わないのでこんなことになってるんだと思う。

Rubyスクリプトは以下にあります、ありがとうございます!

twitterからmixiボイスにマルチポストするRubyスクリプト書いた - 5.1さらうどん

以下作業ログ

$ gem install mechanize WARNING: Installing to ~/.gem since /var/lib/gems/1.8 and /var/lib/gems/1.8/bin aren't both writable. WARNING: You don't have /home/jklryo/.gem/ruby/1.8/bin in your PATH, gem executables will not run. Building native extensions. This could take a while... ERROR: Error installing mechanize: ERROR: Failed to build gem native extension.

/usr/bin/ruby1.8 extconf.rb install mechanize extconf.rb:5:in `require': no such file to load -- mkmf (LoadError) from extconf.rb:5

Gem files will remain installed in /home/jklryo/.gem/ruby/1.8/gems/nokogiri-1.3.3 for inspection. Results logged to /home/jklryo/.gem/ruby/1.8/gems/nokogiri-1.3.3/ext/nokogiri/gem_make.out

ぐぐったら ruby-dev をいれないと動かないらしい。

[ruby language="-list:17605[/ruby] Re: can't exec extconf.rb (LoadError)"]

メーリングリストではdebianとあるけどubuntuなので同じだろうと予想して sudo apt-get install ruby-dev を実行した。
その後再度 gem install mechanize するが・・・

$ gem install mechanize WARNING: Installing to ~/.gem since /var/lib/gems/1.8 and /var/lib/gems/1.8/bin aren't both writable. WARNING: You don't have /home/jklryo/.gem/ruby/1.8/bin in your PATH, gem executables will not run. Building native extensions. This could take a while... ERROR: Error installing mechanize: ERROR: Failed to build gem native extension.

/usr/bin/ruby1.8 extconf.rb install mechanize checking for iconv.h in /opt/local/include/,/opt/local/include/libxml2,/opt/local/include,/opt/local/include,/opt/local/include/libxml2,/usr/local/include,/usr/local/include/libxml2,/usr/include,/usr/include/libxml2,/usr/include,/usr/include/libxml2... yes checking for libxml/parser.h in /opt/local/include/,/opt/local/include/libxml2,/opt/local/include,/opt/local/include,/opt/local/include/libxml2,/usr/local/include,/usr/local/include/libxml2,/usr/include,/usr/include/libxml2,/usr/include,/usr/include/libxml2... no libxml2 is missing. try 'port install libxml2' or 'yum install libxml2-devel' 以下略

おおう・・・ libxml2 は入ってるぞと思ったが 'yum install libxml2-devel' とあるので libxml2-dev を入れる。
その後 gem install mechanize するが今度は libxslt がないといわれる。無い無い尽くしだな!コマンドの結果を貼り付けるのもめんどくさいので以下略する。
sudo apt-get install libxslt1-dev を実行すると mechanize のインストールは成功したが、スクリプトを実行すると次は net/https が無いと怒られる。これも入れる。

これでやっとtwitterのpostをmixiにも反映できた。長かった・・・

ひとまず動かすまでに実行したコマンド羅列 gem って sudo いるんですかね?

$ sudo apt-get install rubygems $ sudo gem install twitterrb $ sudo apt-get install ruby-dev $ sudo apt-get install libxml2-dev $ sudo apt-get install libxslt1-dev $ sudo gem install mechanize $ sudo apt-get install libopenssl-ruby $ ruby twitter2mixivoice.rb

apt-get 多いので省略した こっちは動作確認してない。

$ sudo apt-get install ruby ruby-dev libxml2-dev libxslt1-dev libopenssl-ruby rubygems $ sudo gem install twitterrb $ sudo gem install mechanize

Sponsored Link
モバイルバージョンを終了