No Such Blog or Diary
Linux amd64用の Lightning を作る
- 2010-02-18 (Thu)
- ソフトウェア ( Linux/coLinux )
Linux amd64用の Lightning のバイナリが見つからないので build する.作り方は Getting comm-central Source Code Using Mercurial とか参考にした.
とりあえず準備として必要なものを用意する.autoconf2.13であることが重要だったらしい.別バージョンのautoconfでやったら build に失敗した.
sudo apt-get build-dep sunbird sudo apt-get build-dep firefox sudo apt-get install mercurial libasound2-dev libcurl4-openssl-dev libnotify-dev libxt-dev libiw-dev mesa-common-dev autoconf2.13
次にソースを取ってくる.重たい.
mkdir mozilla cd mozilla hg clone http://hg.mozilla.org/releases/comm-1.9.1/ src cd src python client.py checkout
そして,Sunbird と Lightning をコンパイルするように設定して,コンパイルを走らせる.
echo 'ac_add_options --enable-application=calendar' > .mozconfig echo 'mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-sb-release' >> .mozconfig echo 'mk_add_options MOZ_MAKE_FLAGS="-j8"' >> .mozconfig echo 'ac_add_options --enable-calendar --disable-official-branding' >> .mozconfig make -f client.mk
以上で ./objdir-sb-release/mozilla/dist/xpi-stage/ に lightning.xpi (Lightning本体) と gdata-provider.xpi (Google calendar用) が出来上がるので,両者を Thunderbird 3.0 に読み込んで終了.
今のところ問題なく動いている.
そして外は雪が降っている.
- Comments: 0
- TrackBack (Close): -
Hardy で Thunderbird 3.0 を使おうかと
- 2010-02-18 (Thu)
- ソフトウェア ( Linux/coLinux )
PPA for Ubuntu Mozilla Daily Build Team にある APTラインをソフトウェア・ソースに追加:
deb http://ppa.launchpad.net/ubuntu-mozilla-daily/ppa/ubuntu hardy main deb-src http://ppa.launchpad.net/ubuntu-mozilla-daily/ppa/ubuntu hardy main
そんで鍵を登録:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 247510BE
あとは適当にインストール:
sudo apt-get update sudo apt-get install thunderbird-3.0
あとはランチャの起動プログラムを thunderbird から thunderbird-3.0 に変更して終了.
メニューが英語なのをどうにかするには… オフィシャルで日本語版を落とすのが早い気がしてきた.と思って試したけど libdbus あたりの shared library が見つからないとか起こられたので PPA で行くことにした.
- Comments: 0
- TrackBack (Close): -
Netwalker に USBVGA アダプタ付けてみた
- 2010-02-17 (Wed)
- ソフトウェア ( Linux/coLinux )
使ったUSBVGAアダプタはBUFFALOのGX-DVI/U2で,Displaylinkのチップが入っているのでここらへんのドライバとかが使える.
ということで以下手順メモ.
- カーネルモジュールとXのドライバを作る準備.
sudo apt-get update sudo apt-get upgrade sudo apt-get install module-assistant sudo module-assistant prepare sudo apt-get install xorg-dev
- displaylink-mod作成.Netwalkerのカーネルは古めなのでコンパイルも問題なくできた.
wget http://projects.unbit.it/downloads/displaylink-mod-0.3.tar.gz tar xfvz displaylink-mod-0.3.tar.gz cd displaylink make sudo make install sudo depmod -a
- displaylink-modのテスト.USBVGAアダプタをディスプレイにつないでから,Netwalkerに繋ぐ.手元の環境だと /dev/fb2 が出来た.一面緑になっていればオッケーらしい.そして仮想コンソールを割り当ててみるとちゃんと表示されてくれる.
sudo apt-get install fbset sudo con2fbmap 3 2 # virtual terminal 3 to framebuffer 2
これでCTRL+ALT+F3とかやると仮想コンソールがでる. - Xのドライバ作る.
wget http://projects.unbit.it/downloads/udlfb-0.2.3_and_xf86-video-displaylink-0.3.tar.gz tar xfvz udlfb-0.2.3_and_xf86-video-displaylink-0.3.tar.gz cd xf86-video-displaylink/ ./configure make sudo make install
- /etc/X11/xorg.conf を書き換える.Using an external monitor with a Sharp Netwalker を参考に適当にファイルのパスとか解像度とか追加.書き換えたら再起動.失敗しても,/etec/X11/xorg.conf を空にすれば普通に起動できるので安心.
#### xorg.conf for netwalker with dislaylink Section "Files" ModulePath "/usr/lib/xorg/modules" ModulePath "/usr/local/lib/xorg/modules" EndSection Section "Device" Identifier "Configured Video Device" EndSection Section "Monitor" Identifier "Configured Monitor" EndSection Section "Screen" Identifier "Default Screen" Monitor "Configured Monitor" Device "Configured Video Device" EndSection Section "ServerFlags" Option "DontZap" "False" EndSection ### for USB-VGA ### Section "Device" Identifier "Device[DLUSBVGA]" VendorName "Device Vendor" BoardName "Device Vendor" Driver "displaylink" Option "fbdev" "/dev/fb2" EndSection Section "Monitor" Identifier "Monitor[DLUSBVGA]" VendorName "Monitor Vendor" ModelName "Monitor Model" VertRefresh 50-76 HorizSync 30-90 EndSection Section "Screen" Identifier "Screen[DLUSBVGA]" Device "Device[DLUSBVGA]" Monitor "Monitor[DLUSBVGA]" DefaultDepth 16 SubSection "Display" Depth 16 Modes "1280x1024" "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 8 Modes "1280x1024" "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 24 Modes "1280x1024" "1024x768" "800x600" "640x480" EndSubSection EndSection Section "ServerLayout" Identifier "Default Layout" Screen 0 "Default Screen" Screen 1 "Screen[DLUSBVGA]" RightOf "Default Screen" EndSection #### end of xorg.conf
- 使う.アダプタ付けたらCTRL+ALT+BACKSPACEでX再起動してやると右に画面ができる.アダプタ外したらX再起動して画面なくす.今のところ1280x1024のディスプレイで接続成功した.でも3Mの超小型プロジェクタMPro120では上手くいかない… dmesg で見る限り最大画面サイズ(1280x768)の認識まで出来てるけど緑の画面が表示されず画面の一番下に白いラインが出た状態になるだけ.3Mのロゴがでてないので何らかの信号がプロジェクタに伝わっているようだけど謎.動的に解像度を変える仕組みでも入れていろいろ試さないと良く分からない.
そして別々のXサーバになってるので物事の移動が面倒.DMX(Distributed Multihead X)とかやりゃいいのかもしれないけど.xrandrって複数のXサーバをまとめるとかできるのかなぁ.とりあえずディスプレイ指定して物事を起動するスクリプトを用意してお茶を濁す.
#!/bin/bash DISPLAY=:0.1 $*
とりあえず外部ディスプレイ上ではOOoでプレゼンできることを確認出来たので目的の大部分は達した.ページを頻繁に切り替えない限りストレスも無いし.あとはプロジェクタとの相性なのでなんとも.
- Comments: 1
- TrackBack (Close): -
コンパイルできないなぁ
- 2010-02-15 (Mon)
- ソフトウェア ( Linux/coLinux )
Netwalker から画面出力したいなぁと思って DisplayLink のドライバ(displaylink-mod)をコンパイルしようとしたのだけど… drm_edid.h のエラーでコンパイルがこけた.付属の drm_edid.h 使えば良いらしいけどカーネルソースの drm_edid.h だとこける.なぜ?
- Comments: 0
- TrackBack (Close): -
icc無理やりインストール(動いてるからいいや)
- 2010-01-21 (Thu)
- ソフトウェア ( Linux/coLinux )
実はicc11.1ではUbuntu9.10がサポートされていないという.でもそんなの気にせず無理やり入れる.
参考:http://software.intel.com/en-us/forums/showthread.php?t=69247
とりあえず、インストーラを騙した後に、64bitだけでもjauntyからlibstdc++.so.5をもらってくる.これで動いた.
手順1:インストーラを騙すためのリンクを作る.
sudo ln -s /usr/lib32/libstdc++.so.6 /usr/lib32/libstdc++.so.5 sudo ln -s /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.5
手順2:普通にicc11.1をインストール.この時点では,プログラムをコンパイル(リンク)しようとするとlibstdc++.soに特定の関数が見つからないと怒られる.
手順3:ちゃんとした libstdc++.so.5 を jaunty からもらってくる.http://packages.ubuntu.com/ja/jaunty/amd64/libstdc++5/download
手順4:適当にコンパイラにパスを通して,さらに /etc/ld.so.conf.d/ のどこかにライブラリへのパスを通す.
かっこ悪いけど動けばいいのでコレにて問題解決.
- Comments: 0
- TrackBack (Close): -
top コマンドで kill できたのね
- 2010-01-16 (Sat)
- ソフトウェア ( Linux/coLinux )
作ったプログラムがちゃんとCPU食いつぶしてるかなぁと確認するのに,しばしばtopコマンドを使う.8コアマシンでCPU利用率800%とか表示されるプロセスを見ると幸せな気分.
MPIでプログラムのデバッグ中とかは,周りが死んでるのに必死になって計算している孤独なプロセスの有無を確認するのにtopが有効.そういった孤独なプロセスは次に走らせるプログラムのじゃまになるので,そっと殺してあげたい.
で,top で様子を見つつ k を押すと殺したいプロセスにシグナルを送れることに気がついた.これまでは殺したいプロセスの PID を確認して,top を出て,そして kill コマンドを使うというアホなことをやっていた.忘れないようにメモっておく.
- Comments: 0
- TrackBack (Close): -