hns - 日記自動生成システム - Version 2.19.9

  • 03/11(木) AsiaBSDCon 2010
  • 03/11(木) たれさん誕生日
  • 03/12(金) AsiaBSDCon 2010
  • 03/13() AsiaBSDCon 2010
  • 03/14() AsiaBSDCon 2010
  • 03/15(月) P 利用注意
  • 03/15(月) 所得税申告期限
  • 03/16(火) 森之下会館
  • 03/17(水) 不燃ごみ
  • 03/19(金) CQ Ham Radio
  • 03/25(木) Interface
  • 03/27() 0900 WW WPX Phone
  • 03/31(水) JLA 払込
  • 03/31(水) 情処会費期限
  • 04/01(木) atactl check
  • 04/07(水) 不燃ごみ
  • 404 Aqua Emacs + jsarticle
  • 403 JNUG 総会/BOF 2009/07/04 (土)
  • 402 用途別 Emacs ( C, LaTeX, 日本語 )
  • 401 config -p
  • 400 Xaw3d and -Wl,-Wrpath
  • 380 cvsweb の移行
  • 370 tamago 辞書登録
  • 368 CROSS (cross/i386-mingw32, cross/powerpc-linux ) Framework --- binutils + gcc
  • 363 Wanderlust+HyperEstraier
  • 360 evbppc 用 patch / 玄箱
  • 350 DNS inventory by dns report internal domain
  • 340 TsubaiBSD -> /dev/pci, X11 summary, patch の整理, /dev/openprom /dev/battery
  • 335 /dev/battery is missing hack | libgcc_s_pic.a is missing | samba の -PIE 問題335 ntpd monitor
  • 325 tcode頁の更新
  • 322 software |hardware
  • 321 emacs-22 | IPv6
便利なツール
Emacs
らくらく 入門
rakuraku-emacs-cover

先月 2010年03月
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Namazu for hns による簡易全文検索
詳しくは 詳細指定/ヘルプを参照して下さい
検索式:

2010年03月08日(月) 旧暦 [n年日記] [更新:"2010/03/09 07:36:09"]

#1 [無線] ARRL DX Phone 2010

CW の部 に引続いて Phone の部も一応全時間 (full time) で参加。 SOAB LP (Single Operator All Band Low Power)
BandQSOPointsSec
1.8000
3.5000
719758836
1411735132
2116348929
28000
Total477142897
1,428 * 97 = 138, 516

cabrillo2-time-table を少し変更した:

download/ ディレクトリに置いてあって、 Windows で実行するにはどうするか というのも別に書いてあるものだけれど、やはり、 時刻に空きがある時にはそれが目で分る方がいい かな、ということで、そうして見た。

録音音声利用はあきらめ:

開始時には何も用意していなくて、土曜日の昼に、 録音音声用の小さな変換器を用意した。
無線の機械は IC-7000 で、マイク音声入力は RJ-45 形状になっている。それで
3.5m/m ジャック -> RJ-45 アダプタ
のようなものを作ったのだけど、考えが甘かった。
PC -> USB audio -> 3.5m/m プラグ -> 上記へ
とつないでおいて、 自分の声は audio recorder だったか OS の内蔵の機能で録音しておいて、 適切な設定等をすると、 N1MM の F1 キーで CQ を出してくれる。 しかし、それ以上のことが出来ず、特に、生声でしゃべった音と混ぜられない。
結局、今回も準備不足ということで、全て生声で通す。結構疲れて、もし声が出なく なったらどうしようか、等とも考えてしまった。


2010年03月03日(水) 旧暦 [n年日記] [更新:"2010/03/05 08:40:23"]

#1 [gcc] gcc の PHI って何かな

gcc の内部を見る時に、一つの方法は -da を付けて処理をすることがある。 -d の後に a を付けると、全ての中間譜を保存してね、だけれど、 a でなくて、色々な一文字も指定出来る *1 それで、その時に出来た、例えば、libgcc2.c.160r.shorten のような名前の中を見ると
 [orig:65 prephitmp.86 ]
このようなものがあってこれは何かなと思う。それで少なくともこの文字列の中の PHI が重要な用語だ。で何かの略かなと思うが、どうもそうでもないらしい。 info の gccint の中の 10.5 Static Single Assignment の中に解説がある。 まず、この SSA が重要である。

プログラムを書いた人にとっては一つの名前の変数を、gcc の内部では、 その代入のたびに枝番を付けて区別するというのが、この SSA。

それで、変数を参照する時には、その枝番の中で一番新しいものを参照す る必要がある。 ところが、プログラムの進行によっては、どの枝番が最新かが決められない こともある。上記 info に書いてある例だけど、元は全て a という名前の 変数だったとして、gcc 内部では次のように書替える。

  if (...)
    a_1 = 5;
  else if (...)
    a_2 = 2;
  else
    a_3 = 13;

  # a_4 = PHI <a_1, a_2, a_3>
  return a_4;
ここで a を返したいが、_1, _2, _3 のどれにして良いか決まらない時に、 この PHI <a_1, a_2, a_3> のように書いて、 「a_1 a_2 a_3 のどれか一つだけれど、そのどれかは分らない」と いう意味になる。 ついでなので、PHI 関連のマクロがあるので、挙げておく
PHI_RESULT (PHI)
PHI で作った SSA_NAME を返す
PHI_NUM_ARGS (PHI)
変数の数を返す
PHI_ARG_ELT (PHI, I)
I 番目の組を返す
PHI_ARG_EDGE (PHI, I)
PHI の I 番目の枝番を返す
PHI_ARG_DEF (PHI, I)
I 番目の SSA_NAME を返す
で、この時に出来た prehitmp という型の tree に、この最初に書いたような名 が付く。

PRE の方:

それで PREの方は Partial Redundancy Elimination の略だ。簡単に言うと、一部が同じなら省略しようね。

*1: gcc 4 からは一文字ばかりでなく、名前でも指定出来るようになっている

Comments related this article

Re: gcc の PHI って何かな by AoiMoe    2010/03/05 00:12
SSA φ でぐぐったらこんなページが: http://www.is.titech.ac.jp/~sassa/coins-www-s...
Re: gcc の PHI って何かな by h.suehiro    2010/03/05 03:57
関数を書いて引数で分岐するような例の方がわかりやすいような気がした。 PHIマクロが...
Re: gcc の PHI って何かな by makoto fujiwara    2010/03/06 00:12
つっこみをありがとうございます。正直なところ phi -> φという連想というか読み...

2010年03月01日(月) 旧暦 [n年日記] [更新:"2010/03/01 22:04:01"]

#1 [無線] ARRL LoTW DXCC K4M が増えた

僕は ARRL の LoTW を大変気に入っている。 ただ、
  • JCC 等の Award に使えないのは大変申訳けないと思う
  • 正直なところ WAS への追加は良く分らない
というのはある。それと、自分の使い方の問題だと思うが DXCC 等が増えていても、何が増えたのかが良く分らない。 しかし、きょう (Most Recent QSL を )見たら Midway K4M が増えていた (20/15m)。申訳けないけれど、Donation はしていないです。
これで Mixed が 65 になった。
どうも太字の check mark が入っているのが新規というこ とで、それを (Most recent QSL から) 探せば良いらしい。


2010年02月27日() 旧暦 [n年日記] [更新:"2010/03/03 22:14:01"]

#3 [NetBSD][pkgsrc] ap2-php4 (apache + php4) が入用に

ちょっと理由があって、php4 の動く機械が入用になった。 その理由が間違っている可能性は零ではないが、まあ、それは置いておいて、 何とかして見たいと思っている。

それで、かなりの試行錯誤などもあって ap2-php4 は作ることが出来た。 それの様子も、自分のために書いておきたい気はするが、その前に、もう一つ 必要なものがあって、それは php-mysql だ。これがまだ出来ていない。

pkgsrc-2007Q3 に戻して make:

ちなみに、上記の方法の主な手段とは、
  • それらしい部分を pkgsrc-2007Q3 に戻す
  • /etc/mk.conf に
    PHP_VERSION_REQD=4
    
    を加えておく、
というような方法である。

mysql_close in -lmysqlclient... no:

それで、今出喰わしている問題は
checking for mysql_close in -lmysqlclient... no
checking for mysql_error in -lmysqlclient... no
configure: error: mysql configure failed. Please check config.log for more information.
である。それで勿論というか
/usr/pkg/lib/mysql/libmysqlclient.??
のようなものは入っているが buildlink3.mk 環境で、これを見つけてくれない問題だと 思っている。

Makefile ( *.mk) に verbose print ?:

で、また例によって手探りな訳だが、 Makefile の中に verbose print を入れて見たいが、その方法が良く分らない。そこで、 例えば、databases/php-mysql/Makefile に、次のような行を加えて見る
 .include "../../lang/php/ext.mk"
+PKG_FAIL_REASON+=      "[mysql.buildlink3.mk] ${MYSQL_PKGSRCDIR} is not a valid mysql package."
 .include "../../mk/mysql.buildlink3.mk"
 .include "../../mk/bsd.pkg.mk"
するとこれは、次のように、そこで落ちる。MYSQL_PKGSRCDIR に何も代入されていないのは、 まだ代入の前だからいいのかなと思う (「そこで落ちる」というのは正しくなく、 「これが原因で、この変数を確認するところで落ちる」訳だけれど)。
pts/0:makoto@ap2-php4 22:30:25/100227(...databases/php-mysql)> make
ERROR: This package has set PKG_FAIL_REASON:
ERROR: [mysql.buildlink3.mk]  is not a valid mysql package.
*** Error code 1

mk/mysql.buildlink3.mk は読んでいる ?:

では、それは消して元に戻して、 その次の mysql.buildlink3.mk の中に、
 # force an error
 PKG_FAIL_REASON+=      "[mysql.buildlink3.mk] ${_MYSQL_VERSION} is not a valid mysql package."
 .endif
+PKG_FAIL_REASON+=      "[mysql.buildlink3.mk] ${MYSQL_PKGSRCDIR} is not a valid mysql package."
 
 .include "${MYSQL_PKGSRCDIR}/buildlink3.mk"
のような行を入れて見ると、これでは落ちない。最初の方に書いたところまで進んで止る。
これはここまで進んで来ていないのか、それとも、この
.include "../../mk/mysql.buildlink3.mk"
で、この(変更した)譜そのものを読んでくれていないということだろうか。 因みに mysql.buildlink3.mk という名前のものは、これ一つしか見つからない。
それとも、 ../../mk/mysql.buildlink3.mk の最初の方にある
.include "../../mk/bsd.prefs.mk"
の部分でこの configure を実行しているのかな。
その mk/bsd.prefs.mk の 最後に上記 PKG_FAIL_READSON 行を入れると止るから、そうでもないらしい。 (これは何度も呼ばれるはずなので、これは情報量がないかも知れない)

mk/mysql.buildlink3.mk を変更して見る:

mk/mysql.buildlink3.mk
の最初の方に、この PKG_FAIL_REASON を入れると落ちるのに、
.include "../../mk/bsd.prefs.mk"
の後だと進んでしまうので、やはりその辺かな。
関係ありそうな(設置済) packages
mysql-client-5.0.88 MySQL 5, a free SQL database (client)
mysql-server-5.0.88 MySQL 5, a free SQL database (server)
m4-1.4.13           GNU version of UNIX m4 macro language processor
gmake-3.81          GNU version of 'make' utility
php-4.4.7nb1        HTML-embedded scripting language
autoconf-2.65nb1    Generates automatic source code configuration scripts
automake-1.11.1     GNU Standards-compliant Makefile generator
ap2-php4-4.4.7nb1   Apache (apache2) module for PHP4
zlib-1.2.3          General purpose data compression library
digest-20080510     Message digest wrapper utility
f2c-20090411nb4     Fortran to C compiler including a script to emulate f77
libtool-base-2.2.6bnb3 Generic shared library support script (the script itself)
pkg-config-0.23nb1  System for managing library compile/link flags
OS:
NetBSD ap2-php4 5.0_STABLE NetBSD 5.0_STABLE (XEN3PAE_DOMU) #
mysql を 4.1 にして見るかな。関係ないとは思うけれど。
試しに
             cd work/
252  1:07    cd php-4.4.7/
254  1:07    cd ext/
256  1:07    cd mysql/
261  1:07    ./configure
262  1:08    make
263  1:08    make -n install
271  1:11    sudo make install
273  1:11    sudo /etc/rc.d/apache restart
これで一応
pts/0:makoto@ap2-php4 1:16:39/100228(...ext/mysql)> ls /usr/pkg/lib/php/20020429
mysql.so*
は出来た。

tmpfs:

今回は更にもう一つばかなことをした。mysql に接続しようとすると
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
と言われる。これは何故だったかと言うと mysql が起動した時に作ったはずの sock がない、 ということだ。実は /etc/fstab に
tmpfs                   /tmp    tmpfs   rw
を最近追加して、更に何も考えずに mount /tmp していたが、これでは、 今まであった /tmp のものが、かくれて見えなくなってしまう。 最低限、何があったかを調べてから mount するべきだ。
これは mysql を再起動することで回復した。
上記 /etc/fstab は(そろそろ)初めから(OS 設置時から)入っていてもいいのでは、 pという気もする。

#2 [NetBSD][pkgsrc] Syntax error: expecting "in"

2007/10/19 の日記 に、標題の Syntax error: expecting "in" の記事を書いた。 これに何回か出喰わした訳だが、どうも今は以前より良くなっている気がする。 これは、多分
pkgsrc/mk/buildlink3/bsd.buildlink3.mk
が出していて、例えば、 次の 571 行目の ${BUILDLINK_PREFIX.${_pkg_}} が空だからかなと思う
569  ${_BLNK_COOKIE.${_pkg_}}:
570      ${_PKG_SILENT}${_PKG_DEBUG}            \
571      case ${BUILDLINK_PREFIX.${_pkg_}} in            \
572      *not_found)                                                     \
573              ${ERROR_MSG} "${_pkg_} is not installed; can't buildlink files."; \
574              exit 1;                              \
575              ;;                                   \
576      esac
これをどうやって見つけたかと言うと、
make -dA >& /tmp/log
のようにしておいて expecting の文字列を探す、というような方法を取った。

#1 [音楽] 末延 麻裕子さんと柘植涼子さん

  1. サンサーンス 白鳥
  2. サンサーンス ヴァイオリン・ソナタ第一番ニ短調
    Saint-Saens, C.: Violin Sonata #1
  3. ラフマニノフ ボーカリーズ
    Rachmaninoff Vocalise For Violin
  4. マルティヌー ヴァイオリン協奏曲第二番
    Martinu, B.: Violin Concerto #2
  5. モンティ チャールダーシュ
    Monti csárdás / čardáš
特にこの二番目の曲が(分りやすく)素晴しかった。 初めて聴く曲であるのに、これだけ感動するのは、曲がいいか、 それとも演奏がいいか、だけれど、そして、多分その両方だとは思うけれど、 (それほどこの曲が有名でないことを考えると) やはりきっと後者なのだろう。
四番目も力演だった。1940 年代の作曲だそうだ。
解説は御本人から。とても若いのに、はっきりとお話をされるのは とても素晴しい。また曲は Violin の名前になっているが、(世の常として) Violin Sonata というのは Piano + Violin の競演で、ピアノの柘植さん も、聴いていてほれぼれする演奏だった。

きょうはアンテナ工事の予定だった。しかし、早朝、雨で中止の電話。 それで、銀座に出かけた。 しかし後で聞いたら、午後の雨が上った時に工事は行なったそうだ。 僕にも連絡をしたけれど、返事がなかったとのこと。 確かに見たら 8:30 頃着信記録があった。でもその時は寝ていたのだった。 手伝えなくて、申訳けなかった。



2010年02月26日(金) 旧暦 [n年日記] [更新:"2010/02/26 22:17:38"]

#1 [無線] QSL カード が 109 枚到着

JARL から QSL カード が 109 枚到着した。 (実は自分の方からは、まだ出していないので申訳けない) 殆んどは JA からだけれど、 DX1J, AH0BT, VR2ZQZ/p, B5A, 6K5AQY, Poland からの SWL カード もあった。
その他に、 ALL JA 2009 の参加証も入っていた。
今回は今までで一番多く、宅配便扱いだった。



最近の日記
2010年03月08日
ARRL DX Phone 2010
2010年03月03日
gcc の PHI って何かな
2010年03月01日
ARRL LoTW DXCC K4M が増えた
2010年02月27日
末延 麻裕子さんと柘植涼子さん
Syntax error: expecting "in"
ap2-php4 (apache + php4) が入用に
2010年02月26日
QSL カード が 109 枚到着
以上、5 日分です。
タイトル一覧
カテゴリ分類
Powered by hns-2.19.9, HyperNikkiSystem Project

Count.cgi (since 2000/02/05)