2010年1月4日月曜日

buildrootを使ってみよう その2

 

buildrootを使ってみよう その1の続きです。

buildrootをmakeした結果、outputディレクトリの下に、
開発環境やファイルシステム等が生成されていました。

buildroot/output/staging/usr/bin –> gcc等
buildroot/output/staging/usr/lib –> libc.so等
buildroot/output/target –> ファイルシステム
buildroot/output/images –> イメージ化済のファイルシステム(ext2等)

buildroot-2009.11ではこんな感じです。
# versionによっては異なることもあるようです

今回はARM用にmakeしてみたので、
arm-linux-XXXっていうファイルがたくさんできました。

 

さて、肝心の動作確認です。
Target用の実行ファイルを作成し、qemuを使って実行してみます。

実行ファイルは、おなじみhello.cです。
makeは今回作成したarm-linux-gccです。
libraryも含めるように-staticを付けてmakeしました。

 

ドキドキしながら動作させてみると、サクっと動いちゃいました。

qemu-kekka

こーんな感じです。

上から、
1.fileの内容を確認
2.x86上で普通に実行
3.qemu上で実行

rootで実行してるのは、色を付けたかっただけです。

# あー・・・へいよーぐっつすっすはスルーしてください
# 先日みたニコニコ動画のとある動画の影響デス

 

これで、実機でも動くことを確認できたら、文句なしですね!

実はお仕事で使ってるのがARMなので、
隙を見てコッソリ動かしてみようかと思ってます。

ファイルシステムの方は・・・流石にコッソリFlashに焼くとかは無理だなぁ(汗)
今度やすーいボードを買うことも検討してみよう。

 

ところで、qemuのインストール方法ですが、
openSUSEならYaST2のSoftware Managementで、
”qemu”を検索して、出てきたのをインストールするだけです。

yast2-qemu

引っかかるのが一個だけなので何も悩む必要ないですね。

zypper install qemu でもきっと大丈夫だと思います。
# 私は試してません

他のディストロでも、apt-getやらyumやらで簡単にインストールできるはずです。

インストールするとqemu-XXXっていう実行ファイルがたくさん使えるようになるので、
アーキテクチャに合わせて使ってみてください。

2010年1月3日日曜日

buildrootを使ってみよう その1

 

buildrootというのは、様々なTargetの開発環境やルートファイルシステムを、
kernelのmenuconfigと同じTUIで作成できるTool(?)です。

ファイルの集合体って言った方がいいのかもしれないですね。
使用するライブラリがuClibcなので、組み込み向けです。

buildroot_top

menuはこんな画面です。

試しにTargetとしてARMを選択してみると、

buildroot_arm

いっぱい出てきました。

こりゃ便利。
いちいち開発環境整えるだけでも大変ですからねぇ・・・。

Targetの選択と、Toolchainの選択と、Packageの選択をして、
makeをすれば簡単にできあがり!

の予定です。

 

実はmakeしながらブログ書いてます(汗)
kernelもそうですが、最初の一回目のbuildはすっごい時間かかるので、
動作確認はまた今度かな。

評価ボード等、実機で動かせるものは持っていないので、
QEMUを使ってみようと思ってます。

QEMUを使えば、クロスコンパイルして作成した実行ファイルを、
ホストコンピュータ上で実行できます(できるはずです)

ファイルシステムは無駄になっちゃうけど・・・・。

 

 

buildrootを使ってみよう その2に続く。

2010年1月2日土曜日

openSUSEでVMwareの共有ディレクトリが使えない?

 

明けましておめでとうございます。

色々あって、うちのノートPCのOSがWindows7になっちゃいました。

デュアルブートも考えましたが、いちいち切り替えるのが面倒なことと、
なにより、Windows7の方が動作が軽い orz

もちろん、グラフィカルな部分を抑えまくることでLinuxの方が軽快になるのでしょうけど、
やっぱり長い時間使っていると見た目も気になるのです。

ということで、年明け早々にopenSUSEのVMimageを作ってました。

 

使用したToolはVMware Player 3.0.0です。
ゲストOSはopenSUSE 11.2で、今回はデスクトップ無しです。

・・・一応GNOMEの環境いれたのでstartxで起動しちゃいますが、
runlevelは3で起動するようにしてます。

開発やサーバ用途の場合、デスクトップなんてあんまし必要ないですしね。
X上で端末立ち上げてCUIってのもむなしいですから。

openSUSE login

仕上がりはこんな感じ。

 

さて、ずいぶんと寄り道しましたが、本題です。

VMwareには、ゲストOSとホストOSで共有するディレクトリを、
vmware-toolsを通して簡単に作成できます。

恐らくは、VMware使う人なら大概は使ってる機能だとおもいます。

普通は、「VM(V)」→「設定」で仮想マシン設定を開いて、
「オプション」タブの「共有フォルダ」を「有効化」することで、
なんの苦労もせずに使えるようになります。

んでもなぜか、openSUSEの場合は使えない・・・というより、
hgfsが無い!のです。

vmware-hgfsclientを見ても使えるようになってそうだし、
おっかしーなぁ?と思って手動でmountしたら出来ちゃいましたw

どーやら、vmware-toolsをインストール時に/etc/fstabの追記や、
/mnt/hgfsを作成してくれないようでして、自分で追記してあげれば、
問題なく使えるようになります。

 

ということで、修正内容。

1./mnt/hgfsをmkdirで作成
2./etc/fstabに.host:/ /mnt/hgfs vmhgfs defaults,ttl=5 0 0を追記

以上!

hgfsの部分は、fstabの内容とあってさえいれば、好きなものに変えてOKです。
今回は、デフォルトで作成されるはずのhgfsを使用してます。

2009年12月30日水曜日

Windows7でMTU等を変更

 

年末のお掃除中ですが、ちょこっとbreak time.
コーヒーのみつつ、サボってたブログの更新です。

 

MTU (Maximum Transmission Unit)は、通信ネットワークにおいて、
一回の転送で送信できるデータの最大値を示す値です。

っとIT用語辞典に書いてあります。

普通にネットサーフィンを楽しむ方々にとっては縁のない単語ですし、
Developerにとっても、覚えてるだけで気にはしないものだと思います。

一番MTUを気にするのはネットゲーマーでしょうね。

微調整しないとタイミングが狂ってしまう!
なんて方々は、自己責任の下で参考にしてみてください。

 

Comfortable PCをはじめ、PCのパフォーマンスを微調整できるToolがあります。
これらを使用すれば、簡単に設定できる・・・はずでした。

実はWindows7 Ultimate (64bit)で試してみたところ、
どのToolを使用しても変更内容が反映されない!
という罠にはまってしまいました。
# 変更はできるように見えますが、Toolを起動しなおすと元に戻ってるんです

そこで・・・・

レジストリエディタで直接変更してみました。
どうやら、これなら変更内容が反映されるようです。

管理者権限に昇格したToolで変更が反映されないのに、
レジストリエディタなら変更が反映される。

ちょっと不思議ですが・・・
UACの所為で、権限は管理者でも変数の内容がユーザのもので、
ちゃんと変更されてないとかそんな理由なのかなぁ?

 

ってことで、変更するべき場所は以下の通りです。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces\{Interfaces-serial}\MTU
# {Interfaces-serial}はNICごとに違うので適切なものを選択

Ack延滞を変更する場合は、同じ場所の”TcpAckFrequency”の値を変更。
# 無い場合はDWORDで作成する (デフォルトでは存在しない)

 

RWINを変更する場合は、同じ場所の”TcpWindowSize”の値を変更。
ですが、Vista以降はRWINを自動調整するのでここの値は意味をもちませぬ。

TcpWindowSizeを有効にする場合は、cmd.exeを管理者権限で起動して、
netsh interface tcp set global autotuninglevel=disabled
って入力してください。

戻す場合は、
netsh interface tcp set global autotuninglevel=normal
です。

 

これらの調整により、通信のパフォーマンスを向上できるかと思いますが、
調整ミスにより、遅延やタイムアウトが頻発することもあります。

調整の際はいろいろと調べてみてくださいね。
ゲーム毎のMTUもどこかにのってるでしょう。

あーんど、あまりにServerに迷惑かけそうな設定も自重しましょう。
DoS攻撃みたいになっちゃったら大変。
# そんな頻繁に細かくアクセスしても速度落ちちゃいますし・・・

 

参考までに、
ModemのMTUは576。
ISDNのMTUは1000。
ADSLのMTUは1454。
EthernetのMTUは1500。

FTTH以降は、MTUよりRWINを調整するといいかも。

 

少しでも快適な環境を目指してみましょ。

2009年12月6日日曜日

openSUSE11.2にEclipse入れたのだけど・・・



openSUSE11.2をVGN-TZ90NS君にインストールしました。

ほんとはReleaseしたその日にDownloadしたので、
すぐさまブログに書こうと思っていたのに、すーっかり忘れてました。

milestone4で起こってたわけわからん不具合動作は、
Release版では治っているようで、今は快適です。


まだ得に特別なことはしてません。
色々遊んでて気になった点を見つけたらレポートしますね。

っということで、早速一つ目。


Pythonの開発環境を整えようと、EclipseをDownloadしてきました。
KDevelopでも良いのだけど、折角Eclipse少しずつ使い始めた分けだし・・・。

Downloadしたのは、 "Eclipse IDE for C/C++ Developers"
もちろんGalileoです。

まぁ、他のPC上でSetupした経験もありますので、すんなりと終わる!!
はずだったのですけどねぇ・・・。


Downloadして、展開して、機動もすんなり出来て、
"Install new software"で"http://pydev.org/updates"を追加して、
"Next"ボタンを押せば後は勝手に・・・・
ボタンを押せば・・・・
ボタン・・・

"Next"ボタンがクリック出来ない!!
orz

これはもーかなり焦りました。

だって、こんな簡単な手順で、間違いようが無いのに、
なんでかボタンがクリック出来ないんだもの。


散々悩んだ挙句に、なんとなくEnterを押したら、
次の画面に進んじゃいました!

( ゚д゚)ポカーン


どーやら、 "Install new software"の画面にある"Next"ボタンを
クリックすることが出来ないようなのです。

"Cancel"は出来るくせに。


とりあえず、キーボード操作をすれば、普通に動くのでスルーしてますが、
原因が何なのかは分かってません。

VMwareで動いてる、openSUSE11.1にも入れてみようかなぁ?
Eclipseが原因とはどうしても思えないです。




なんで、Pythonの開発環境を作ったかって?

前々から覚えたくて「みんなのPython」とか本も揃えたのに、
ぜーんぜん手を付けてなかったらとりあえず用意したのですw

別の目的もありますが、それは追々。




2009年12月1日火曜日

犯人はKDevelop

 

先日、aRtsの暴走で、

ということでESD (Enlightened Sound Daemon) が動いてて欲しいわけで、
aRtsが起動してる理由がサッパリ分かりませぬ。

なんて言ってましたが、犯人が分かりました。

私のような環境で作業するような人なんて、ほとんどいないでしょうから、
きっと困ってる人は少ないと思いますが・・・自分の為にメモ。

 

私がVMware上で使用してるOpenSUSE11.1のデスクトップはGNOME。
なのに、よくKDEの統合開発環境であるKDevelopを使用する。

実はこいつを起動するとKDEのサウンドサーバであるaRtsが起動するようなんです。

そして”何か”と競合してCPUを占有し始めるという。

 

まぁ・・・こんなあべこべなことをしている私が悪かったりもしますが、
これにはちょっとした理由があるのです。(いいわけもーど)

Anjutaのgrep機能が使いづらいんだ!!
Eclipseを私の作業PC上のVMwareで動かすと重いんだ!!
Kateを使いたかったのにどーしても起動してくれないんだ!!

ってことでKDevelopに行き着いたという。

うーん、色んなところで横着したのが原因かw

 

ちなみに、KDE4からaRtsではなくPhononになりました。

ってことで、私のようにあべこべな環境で開発するか、KDE3.5を使うかじゃないと、
aRtsとは出会えません。

今となっては(今じゃなくても)レアケースですね、きっと。

 

 

 

あれ・・・もしかしてサウンドをESDじゃなくてaRts使用するようにすれば、
普通に動いてくれそう??

やってみようかな。

2009年11月30日月曜日

InfoPath入門

 

何故か、ふと前のブログ消そうと思い立ちました。

どーせ誰も見てないし、結局大したこと書いてないし・・・。
んでもよく見たら1ページだけ異様なアクセス数のページがあったんです。
他のページのなんと80倍w
(まともな記事がそれ一つで終わってたっていう理由もありますが)

ってことで、そのページだけこっちにコピーです。

 

ここから ----------

実は今お仕事で使用している議事録がとーっても見づらくて、
なんとか使いやすくできないものか、できれば他と連携とれないものか、
なんて思ってたんです。

そこで見つけたのがInfoPath。

・・・Word等はよく使うのに、今まで存在すら気付きませんでした。

とりあえずてきとーに触ってみてー・・・
なんて思ってたらちょっとややこしそうだったので、
調べてみたんです。

そしたら、
InfoPath – トレーニング
MicroSoftがトレーニング用のページを用意してたんですね。

これも初めて知りました・・・。

こんな便利そうなツールが存在してたんですね。
私が無知すぎるだけかぁ??

便利そうといっても、あんましよく分かってないので、
一先ず利点を他人に説明できるくらいまで頑張らないと!

ここまで ----------

 

2009-06-13の記事です。

半年くらい経ちました。
何にも進んでません(汗)

あああああああ orz