Hatena::ブログ(Diary)

はけの徒然日記 このページをアンテナに追加 RSSフィード

2005 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 04 | 05 | 08 | 09 | 10 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 10 | 11 |
2011 | 01 | 02 | 03 | 04 | 11 | 12 |
2012 | 02 | 03 | 05 |
2014 | 02 | 03 | 04 | 05 | 12 |
2015 | 05 | 07 | 08 | 09 | 10 | 11 | 12 |
2016 | 01 | 02 | 04 | 05 | 08 | 09 | 11 | 12 |
2017 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 10 |

2007-10-31(Wed)

2007-10-30(Tue)

2007-10-28(Sun)

C++の勉強 その後

毎日、始業前の少しの時間で決定版 はじめてのC++ (ソフトウェアテクノロジー)を読み進めて、やっとクラスが出てくるところまで来ました。ベースが古い本なのですが説明や例題が判りやすいので個人的にはかなり良書だと思います(誤記が多いですけど(^^ゞ)

使っているgccバージョンが古いので、ザウルスで最新のgccを使用して例題を試す場合には以前教えていただいたとおりに

という方法でコンパイルしています。

今まで知らなかった参照引数、new演算子による動的変数の生成の意味、仮想関数の利用方法なんかが朧げに理解できるようになってきました。この辺以前C++でのQtアプリ勉強したときに見よう見まねで適当にやってたところなんですよね。基本を理解するとソースの理解もより進んで面白いです。

Qtアプリはgcc2.95ベースなんでこの本だけでもよさそうですけど、最新のgccを使用する場合にはこの本で出てこなかった名前空間テンプレート(だっけ?)の使い方も理解した方が良いみたいなんで、また他の本を買って読んでみたいですね。

追記

というわけで以下を買いました(^^ゞ

明解 C++

明解 C++

2007-10-27(Sat)

再インストール

ネットワークメールアカウント設定はtarで/etcと/hdd2/Applicationsを戻したらそのまま使用できている様です。続いて各ipkを再インストールしているわけですけど、いかに多くのソフトを入れていたのか改めて実感。


とりあえず悩んだ点

初期化とHDDの切りなおし

初期化のついでにパーティションの切りなおしをしました。プログラム領域を約2Gにしてみました。fdiskとdfの出力はこんなかんじです。

Disk /dev/hda: 8320 MB, 8320499712 bytes
16 heads, 63 sectors/track, 16122 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hda1             1       204    102784+  83  Linux
/dev/hda2           205      4096   1961568   83  Linux
/dev/hda3          4097     15865   5931576    c  Win95 FAT32 (LBA)
/dev/hda4         15866     16122    129528   82  Linux swap


Filesystem           1k-blocks      Used Available Use% Mounted on
rootfs                    5120      5120         0 100% /
/dev/root                 5120      5120         0 100% /
/dev/mtdblock3            4096      2396      1700  58% /home
/dev/ram1                   44        29        15  66% /dev
none                      1024        60       964   6% /dev/shm
/dev/hda1                99521     50387     43995  53% /hdd1
/dev/hda2              1930740     92796   1739868   5% /hdd2
/dev/hda3              5919996   3292764   2627232  56% /hdd3
/dev/mmcda1             999040    447488    551552  45% /usr/mnt.rom/card

以下、手順

続きを読む

2007-10-26(Fri)

初期化準備 - ファイルのバックアップ

標準のバックアップ機能が使えなくなったので初期化すべく個別バックアップを取っているわけですが……差分で済むとはいえ/hdd3のバックアップusb1.1経由で行うのはやはり辛いっす(^^ゞ

あとtarで固めてて気が付いたのですけど普通に固めると.bashrcにみたいにドットで始まるファイルが固まりませんね。

とりあえず

$ tar cvf file * .[a-z]*

みたいにして行いましたけど、これって標準仕様

追記

コメントで教えていただきました、tar cvf file . (ドット)とすれば良いですね。


個別バックアップ対象ディレクトリ

/hdd3以外では、とりあえずこんなとこか、何か忘れてそうで怖い(^^ゞ

ネットワーク関係の設定をそのまま引き継ぎたい場合は/etcと/hdd2/Applicationsをそのまま固めること。

2007-10-25(Thu)

2007-10-24(Wed)

話題のCMソングが大ブレイクの兆し

http://headlines.yahoo.co.jp/hl?a=20071023-00000015-oric-ent

ああ、これだったのか。

「一万年と二千年前から愛してる♪」のフレーズ

前からどこかで聞いて頭に残ってたんですよね。

創聖のアクエリオン(歌詞付)ニコニコ動画

2007-10-23(Tue)

2007-10-21(Sun)

不安点

今日、気がつきました。

なんかAC接続してるときに左のヒンジに指を押しあてると微妙にシビれます。これって漏電(^^ゞ

もうひとつは、メニューの「バックアップ/リストア」からバックアップできなくなりましたorz 70〜80%あたりまでいったところで失敗しましたというメッセージが……サイズ的な問題かなと最近使用しないX/Qt関連のアプリを削除するも変わらず。

一回まっさらにして入れ直した方が良いかなぁ。

鬼車のインストール

前々から興味があった正規表現ライブラリ鬼車の5.9.0をいれてみました。コンパイル自体は問題なかったのだけどlibgcc_s.soをスタティックにリンクさせようとするところで少しハマりました。

オブジェクトから共有ライブラリを生成するところに-static-libgccを追加させようとしたのですがMakefile内に見つからず。結局libtool内に記述があったのですけどこういうのもあるんですね〜

続きを読む

2007-10-19(Fri)

ACアダプタからの充電が終わらない

いつも目盛りが残り一つになったら帰宅して直ぐに充電しています。ですが、ここ数回朝になっても充電終了しません。マニュアルによると3.5時間で充電完了と書いてあるので充電時間は十分のはずです。

ただし一回コードを抜いて再度挿すと数分で充電完了するんですよね、これって一体。。。


って、ゆーかマニュアルみると最初にコードを本体にさしてからACに接続って書いてありますね、これが原因? 逆の手順で挿してたよ、今度ちゃんとした順番で試してみよう。

こういうのってAC側から先に挿すものだと思っていましたが、そうでもないのですね。

2007-10-18(Thu)

「初音ミク」画像がネットから“消えた”?

http://www.itmedia.co.jp/news/articles/0710/18/news040.html


http://internet.watch.impress.co.jp/cda/news/2007/10/18/17223.html

【追記 17:25】

 この問題について、グーグルでは「表示におかしい点があることは確認しており、現在調査を進めている。なんらかのバクなどの問題ではないかと考えており、正しい表示がされるよう対策中」とコメント。また、ヤフーでも同様に、なんらかの問題でこうした現象が起きていることについては確認しているが、いつからこのような結果が出るようになったのかは不明で、原因についても調査中だとしている。

2007-10-17(Wed)

右シフトの有効化 - コンソール環境

前にQtopiaを抜けた環境で右シフトが使えないと書いたらRoccoさんよりloadkeysを使う方法をコメントいただきました。ありがとうございますm(_ _)m

続きを読む

2007-10-16(Tue)

C++の勉強

先日購入した決定版 はじめてのC++ (ソフトウェアテクノロジー)を見ながらザウルス勉強を始めたのですけどgccってバージョンによって仕様が変わってるのでしょうか?

最初の方の例題で

#include <iostream.h>

int main()
{
    cout << "Hello World" << endl
         << hex << 10 << endl;     // 10を16進で表示
    return 0;
}

なんてのをコンパイルしてみたのですけど、gcc4やgcc3だとhexのところでエラーになってしまいます。gcc2.95だとコンパイルできましたけど原因がわかるまで結構時間がかかってしまいました。

でも最新のgccだとどう記述すれば良いのだろう? ちなみにこの本はgcc2.7ベースみたいですね。

2007-10-15(Mon)

2007-10-14(Sun)

GNU Screenのいれかえ

幾霜さんトコで新しいパッケージが公開されてたので入れ替え。

ザウルスは親指入力なのでScreenコマンド入力デフォルトであるCTRL+Aは非常に使いにくいです。そんなわけでこのへんを参考に~/.screenrcを作ってみました

escape ^Ll      ←両方ともエル

これでコマンド入力がCTRL+Lになって使い勝手が良くなりました。


CTRL+Aみたいになんで打ちにくいキー定義にするんだろうと思いましたけど、よくよく考えると普通PCキーボードだと左手で同時押しできるんですよね(^^ゞ


それにしてもQtopia抜けると右Shiftが使えないんですけど、これって何とかならないかなぁ。

2007-10-13(Sat)

活用広がるビジネス携帯

↑のようなタイトルNHK夜七時のニュースのかなり早い方で[es]アドエス?)が登場しました。ニュース冒頭で紹介されていたので思わず見てしまいました(笑)

小学生が何かの発表に使用してるのが放送されていて、たぶん資料集めの段階から使ってたのでしょうね。どこでも持ち運べて便利といったコメントがとれていたと思います。

何でこの時期に? とは思いましたけど、NHKで紹介されるくらいなのでやっぱりスマートフォンの利用者はそれなりに増えてるんでしょうね。下手な大人に持たせるより小学生に持たせた方が面白い使い方を考えだしたりするのかもしれませんね。

ROOM NO.1301 #9

ROOM NO.1301〈#9〉シーナはヒロイック! (富士見ミステリー文庫)

ROOM NO.1301〈#9〉シーナはヒロイック! (富士見ミステリー文庫)

ついに(やっとか)シーナ編も大詰め、日奈が佳奈に告白しました。これがきっかけでシーナ&バッケツデビューということになっていくのでしょうね。健一も一緒にデビューするかというのは疑問の残るところではありますけど。

何にせよ話が転がりそうで嬉しいです、そろそろ彼女の本編登場もみたいしね。次はまた短編集なんてことは無いことを願います。

決定版 はじめてのC++

決定版 はじめてのC++ (ソフトウェアテクノロジー)

決定版 はじめてのC++ (ソフトウェアテクノロジー)

先日のライブラリ作成あたりから、そろそろまともにC++勉強したいかなぁと思って本屋さんへ。MS環境依存しない本を探したらこの本しかなかったという極めて消極的な選定理由ですけど、まぁ古いわりに版数を重ねて出版されているのだから良いかな?と思い購入。

でもアマゾンレビューみると誤字誤記が多いみたいですね、その辺は気をつけながら読んでいこうと思います。かなり厚いので読破できるかという問題もありますけど(^^ゞ


もっと良書がありましたらどなたか教えてくださいませ。

あとはポインタ関係の本も何か買おうかなぁ。

2007-10-12(Fri)

アップデート

バージョンが1.20になりました。PC経由で行いましたけど結構時間がかかりましたね、これも本体RAMが少ないせいなのかな?

早速、気がついた点。マイメニューに登録してたJAVAアプリを選択すると更にメニューが……なんてこった! でも右カーソル長押しでアプリ一覧を出すことができるのを知ったので問題なしです。

他は変化がわかりませんです(^^ゞ

2007-10-11(Thu)

2007-10-10(Wed)

2007-10-07(Sun)

jfbtermを入れる

Qtopiaを抜けての作業での不満のひとつは日本語が使用できないこと。幾霜さんトコを拝見するとjfbtermというものを入れれば日本語表示可能みたいなので入れていました。


続きを読む

makeの終了音

最近zgcc42でいろいろコンパイルしてるわけですけど、ザウルス君は遅いのでコンパイルに時間がかかります。当然ザウルス君を横に置いて他のことをやってるのですけどmakeがおわったことに気がつかないでいることも多々。そこで終了時に音をならすようにしてみました。

続きを読む

2007-10-06(Sat)

マイクロソフト,IE7を日本のユーザーに誤って自動更新で配布

http://itpro.nikkeibp.co.jp/article/NEWS/20071005/283906/

たしかにIE7を入れてないXPマシンにはこの通知がきてましたねー、自動にしてなくてよかった。

慌ててアップデートを適用ってのも善し悪しということですね。

2007-10-04(Thu)

共有ライブラリをRubyで使う 追記

昨日の最後の疑問点ですが、原因はモジュール名とクラス名を同じにした為みたいです。クラス名をClacからXcalcにしたcalc.cppとcalc.hを作って試したところ

require 'calc'
include Calc
a = Xcalc.new
a.add(2,3)

の様な使い方ができました。

赤外線通信

天蕎麦さんのブログを拝見して自分でもWX320Tからザウルスへの通信を試してみました。WX320Tで赤外線通信ができるなんですっかり忘れてました、わはは(^^ゞ


ザウルスを受信状態にしてから、WX320T側で電話帳を全件転送ザウルス側は受信し終わるとアドレス帳に登録しますかと訊いてきたので、はいを選択すると問題なく登録されました。データ形式が一緒だったのかな、というか世間一般的に共通なのでしょうか?

残念ながらWX320T電話帳の送受信しかできないみたいなんで、あまり活用できる場がありません。ザウルスで文字入力WX320T転送してメール送信なんてできれば面白かったのですけど。

2007-10-03(Wed)

共有ライブラリをRubyで使う

SWIGを使えばできるということなので試してみました。ライブラリは一昨日作ったlibcalc.so.1とcalc.hです。

前準備

libcalc.so.1は標準的なライブラリ置き場へ、calc.hは適当な作業ディレクトリへ置く

# cp libcalc.so.1 /opt/QtPalmtop/lib/
# ln -s /opt/QtPalmtop/lib/libcalc.so.1 /opt/QtPalmtop/lib/libcalc.so

続きを読む

2007-10-02(Tue)

静的ライブラリの作成

それならば静的ライブラリも作ってみようということでググってみた。この辺を参考にして

$ gcc -fPIC -c calc.cpp          calc.oができる(-fPICが無くても使用可能なライブラリはできた)
$ ar rv libcalc.a calc.o         libcalc.aができる

$ gcc main.cpp libcalc.a libstdc++.a

できたa.outのldd出力

$ ldd a.out

	libgcc_s.so.1 => /opt/zgcc42/lib/libgcc_s.so.1 (0x40022000)
	libc.so.6 => /lib/libc.so.6 (0x40032000)
	/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

静的ライブラリのリンク

昨日の疑問点だったlibstdc++をstaticに取り込む方法、判ってみれば簡単なことだった。普通にcppなソースと同等に扱えば良いみたい。

$ gcc -L. -lcalc main.cpp libstdc++.a

ポイントは.cppや.oよりも後に書くこと。lddの出力は以下

$ ldd a.out

	libcalc.so.1 => ./libcalc.so.1 (0x40022000)
	libgcc_s.so.1 => /opt/zgcc42/lib/libgcc_s.so.1 (0x4002b000)
	libc.so.6 => /lib/libc.so.6 (0x4003b000)
	/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

2007-10-01(Mon)

おやすみ

土日と働いたので今日は代休でした。でもやっぱ休みは二日は欲しいっす。

共有ライブラリの作成 その2

次にクラスについても実験。やり方は一緒。

ところが今回はコンパイル時(リンク時?)に

undefined reference to `operator new(unsigned)'

というようなエラーがいくつか出てしまった、ググったところ回避するには-lstdc++オプションを付ければ良いとのことなのでつけたらできました。ただしlibstdc++に依存するバイナリになってしまいました。libstdc++.aがあったのでstaticにリンクしたかったのだけど明示的に指定する方法が良くわからん。zvolの時も同じ問題があったんだけど、あの時は.aなファイルカレントに持ってきてコンパイルしたらできたのですけど、今回はダメだった。

    • zvolの時のMakefileの中を調べてみれば良いのかな?
      • 解決、10月2日の日記参照

続きを読む

共有ライブラリの作成

前々から疑問に思っていたsoなファイルってどうやって作るんだろう?という疑問について調べてみました。ググったところこちらに解りやすい説明があったので実験してみる。環境は先日入れたzgcc42です。

続きを読む