HOME | ドキュメント |  ブログ  |  BBS  |  瓦版  | 将棋プロジェクト |  物置小屋   

ドキュメント 象歩 Web瓦版
 BBSボード RDF
こんにちは (23)
おためし板 (321)
質問箱 (94)
テスト (30)
You散歩 (4)
建築 DIY (6)
MTB (32)
(9)
節電対策 (2)
このサイトに関する話 (186)
Linux (396)
PC用ハードウェア (6)
Vine Linux 野良系 (64)
PC 工作 (31)
ドローン (0)
自家製GAFA (0)
BBS の改良 (105)
Vine Seed (520)
Zope とプロダクト (95)
Web の利用技術 (131)
DB とファイルシステム (63)
Python と C/C++ と... (29)
Zopeプロダクト開発メモ (3)
UTF-8 化 (42)
Mail 環境 (8)
COREBlog (109)
Zope3 (51)
Windows 64bit (19)
Mac (2)
Squeak スクイーク (67)
Django ぶらり一人旅 (3)
64bits (52)
Mono 思いにふける (10)
Mint Linux (8)
CentOS (2)
ディスクトップ (4)
象歩将棋 (478)
将棋よもやま (210)
サイトのデザイン (31)
心配な話 (66)
うそ (21)
うそ総集編 (0)
昔のゲストブック (20)
ボート部 (23)
Web 日記 (199)
 スパム
逮捕しる (20)
スパムお溜り (47)
ごみ箱 (6)
 リンク
kiyoさんのサイト
ペンタ郎の漫漕ブログ
端艇部員日記
TIT漕艇部の練習動画 @YouTube
墨堤の雄 @FaceBook
ペンタ(五大学ミドル) @FaceBook
Facebook
Vine Seed パッケージビルド状況
Vine Linux パッケージ情報
VineLinux バグトラッキングセンタ
VineSeed 開発用 Trac
VineSeed Specs
RPMパッケージの作成方法
Linux Standard Base
Planet Vine
Vine Linux ユーザーフォーラム
Vine Users ML アーカイブ
VineSeed ML アーカイブ
twitter#VineLinux
勝手に将棋トピックス
詰将棋おもちゃ箱

Vine Seed

Vineの開発版を中心とした話をしたいと思います。 と云いながら最近は x86_64 関連しか興味が無かったりします。 当ボードは Project Vine とは一切関係ありません。


このまま記事を入力し[投稿する]ボタンを押せば当サイトに送信されます。 以下の文章は注意書きです。

名前はかならず記入してください。ハンドルネームでも構いません。 またパスワードを入力することをお勧めします。 その場合他人による *なりすまし* と区別出来るかもしれません。 さらにブラウザでクッキーを有効に設定してある場合あなたの記事は後で修正可能になります。

コメントスパム防止のため記事の内容を機械的にモデレート (スパムである確率を計算) する処理を通します。 どのような投稿であれ、たまたま計算誤差によりスパムとみなされ 秘密の場所 に収納される可能性があります。 その場合、管理人が手作業で正規の場所に移動しますのでお待ちください。

名前  パスワード(任意)


309  owa  2006/01/28 01:50 id: mJs8kxp1Zus  prob: 0.2%
rpm-4.4.2-0vl6.2.x86_64.rpm (ほぼ)無修正でビルドできた。
思い切ってインストールして見ました。
# 下手すりゃ、最初からすべてやり直しだもんね;;

直後に rpm が全く機能しなくなりましたとさ;; ガーン

最後の手段とリブート。。。
おや、何ごとも無かったようにすべて順調かしら (^^;

$ rpm --eval='%{_arch}'
x86_64
$ rpm --eval='%{_lib}'
lib64
$ echo $HOSTTYPE
x86_64

うひゃひゃ、ひょっとしてうまくいってるの?
308  owa  2006/01/17 23:49 id: mJs8kxp1Zus  prob: 0.1%
>>307 shared library がサポートされてないかも?
libtool の修正が要ると思う。
compat32 のビルドには避けて通れない話のようです。x86_64 の方は問題なし。
http://www.bookshelf.jp/texi/libtool/libtool-ja.html

追記:
今のところ configure CC='gcc -m32' としないといけないらしい。
libtool-1.5.20 の README に書いてありました。2.0 では直る予定だとも。
ともかく libtool のビルドは x86_64, compat32 ともうまくいきました。
307  owa  2006/01/16 23:48 id: mJs8kxp1Zus  prob: 0.0%
Vine x86_64 環境で rpm-4.4.2-0vl6 のビルド試してみました
あら、こんな↓依存関係が
rpm > beecrypt > doxygen > graphviz, qt-devel
doxygen より右は plus カテゴリなので、とりあえずコメントアウト。

で beecrypt-4.1.2 をビルド、インストールするにはやはり暫定 compat32 が必要。
そして compat32 を作るには 32bits 環境が必要なことが解かりました (←大事)。
(他の 32bits マシンでビルドするってのは、今は考えない)

まずは定跡通り
1. spec の先頭で下記を定義する
%define build_compat32 %{?_with_compat32:1}%{!?_with_compat32:0}
%if %{build_compat32}
%define _lib lib
%endif
で、スペックに compat32 対応コードを追加。

また x86_64 環境下では -m32 が無いと 64bits ELF をつくってしまうので、下記は必須だと思います。
2. /usr/lib/rpm/rpmrc の optflags を編集
- optflags: i386 -O2 -march=i386 -mcpu=i686
+ optflags: i386 -O2 -m32 -march=i386 -mcpu=i686

そしてビルドは二度おこなう
$ rpm --sign -ba --target x86_64 beecrypt-vl.spec 2>&1 | tee make64.log
$ rpm --sign -ba --with compat32 --target i686 beecrypt-vl.spec 2>&1 | tee make32.log
これは後で考えないといけないかも。

無事に beecrypt はビルドできたたけど、肝心の rpm は宿題になりました。
1. shared library がサポートされてないかも?
2. asm の環境設定されてないかも?
3. glibc-headers は問題無いか? http://ep09.pld-linux.org/~mmazur/linux-libc-headers/
ボチボチいきまひょ。。。
306  owa  2006/01/12 22:20 id: mJs8kxp1Zus  prob: 0.0%
誤解してたようです
「ピュア64でベースを作れば、わざわざ /usr/lib64 とか考えなくてもよくて、他のパッケージに手を入れる必要無く、芋蔓式にリビルドして行けば良いだけ」と考えてました。
そして vine 的にも本当はピュア64にしたい意向だと。(←これが誤解その1)

> [VineSeed:10125]
> 4つ目として、biarch 対応を当面考えないという手もあると思います。
> プロプライエタリなドライバやソフトウエアが使えないという問題がでますが、
> 当面はあとまわしでも良いような気がします。

続きを読めばまったく反対で、
> とりあえず、4で進めて 3 で後からbiarch対応するという感じがいいのかな
> あという感じです。それでも lib64 対応はしておかないとあとからどうにも
> ならないですが。。どうでしょうか?
で、すでに 3 に進んでるので何も問題無いってことですね。恥ずかしい > 私

>>305
> 32bit バイナリを使わないなら compat-* はなくても動きますし、たりないものは
> どんどん rebuild していけばOKです。
必ずしも i386 と x86_64 が常に発生すると云うことじゃ無いのですね。(←誤解その2)
まずは、試しに少しづつビルドしてみます。問題があれば seed-ml に投稿します。

# 正直言えば、少し前までピュア64なんて幻想を抱いてましたが、あまり現実的じゃ無いですね。
# あやつけるつもりは毛頭ありません。ありがとうございました。
305  daisuke  2006/01/12 02:23 id: safKG/v1S/6  prob: 0.1%
biarch にしないと 32bit アプリケーションが動きません。特にプロプライエタリなもの。
あと、プラグインの類も x86_64 用が用意されていないと全滅。
というわけで biarch じゃないと不便です。chroot で 32bit 環境を用意して、必要に
応じてそちらで動かすというのもなかなか不便ですし。

なお、一応 ppc と同様に x86_64 も別 arch です。
32bit バイナリを使わないなら compat-* はなくても動きますし、たりないものは
どんどん rebuild していけばOKです。

# と、以前この話がでたときに VineSeed で落ち着いたと記憶しています。
304  owa  2006/01/12 00:40 id: mJs8kxp1Zus  prob: 0.0%
NAKAMURA さんのおかげで無事 x86_64 動いてます。
ただ(良く解かってないのですが)少し心配ごとがあります。
RedHat 系のディストリビューションは大概 biarch 対応と云うことで
x86_64.rpm ディレクトリを覗いてみると i386 と x86_64 が共存してます。
これって実は大変じゃないのかな、と心配してます。

誤解かもしれないけど、ppc のように x86_64 も別の arch とすれば compat-* などは必要無いんですよね。
biarch 対応にすると、問題あった時の切り分けが難しくなりそう。
フラグが一個増えればメンテは4倍なんて話も思い出します。
もう少し調べてから書かないといけない事なんで、勉強中です。ごめんなさい。
303  owa  2006/01/07 01:05 id: mJs8kxp1Zus  prob: 0.0%
某所で次期 Vine4 の話が出てるのだけど、
今のままでは WindowMaker-0.92 (最新版) は残念ながら載らないかもしれない。
でも、うちでは問題無く動いてるし、新しいマシンに新規インストールしても問題出ない。

別の某所で日本語メニュが表示されない障害が出ると言うことだけど、
状況が判らないので、いまのところ追う元気が出ない。

そのまた某所でマウススクロールが動かないとか。
これは、たぶん Window マネージャのせいでは無いと 50% 思う。
302  owa  2005/12/20 21:17 id: mJs8kxp1Zus  prob: 1.9%
apt,rpm,vine-keyring が更新された。いろいろありそう。
apt-0.5.15.cnc.7-0vl12
rpm-4.4.2-0vl4
vine-keyring-2.0-0vl6

とりあえず mkkpkg が動きません
$ /usr/sbin/mkkpkg --target=i686 --enable-smp kernel-xxx.src.rpm
--nopgp: unknown option
kernel-xxx.src.rpm: didn't pass "rpm -K"

/usr/sbin/mkkpkg はシェルスクリプトです。中身をいじらないといけないみたい。
rpm の --nopgp, --nogpg オプションが廃止になったようだけど、man の変更は無い。
301  owa  2005/11/27 23:35 id: mJs8kxp1Zus  prob: 0.0%
二つ目は python の make test に関することですが、
通常 make test する場合、
$ ./configure --prefix=/usr/lib
$ make
$ make test

とかすると思うのですが、
prefix が既存の(しかもありがちな) python インストール先を指してる場合、そっちを優先してしまうようです。
また locale は ascii がデフォルトらしく、たとえば既存の環境設定 (/usr/lib/python*/site-packages/sitecustomize.py) で utf-8 を設定してある場合 test_builtin
, test_getargs がエラーになります。

make test が無意味だとすると勿体無い(そんなはずは無い!)ので、一応書いて置きます。
この件は、もう少し調べてから再度報告します。間違っていたらごめんなさい。

あっ Seed に最近入れたテストの場合は強制的に環境設定してるので、問題は無いはず。
300  owa  2005/11/27 23:25 id: mJs8kxp1Zus  prob: 0.0%
python 関連で気になってることを二つ書いて置きます。
一つ目は、正規表現に関する話です。

異常に負荷のかかる処理があります。たとえば
$ python2.3
>>> import re
>>> re.sub('a{1111111111}', 'b', 'abc')
は異常に時間がかかります。たぶん数分後に終了します。

>>> re.sub('(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)', r'\10\9\8\7\6\5\4\3\2\1', 'abcdefghij')
も同様。ただしCntl-C で終了します。

上の処理をさせると、たぶん CPU をほぼ 100% 使い切ってしまいます。
正規表現を使う場合には注意したほうが良いと思います。

python-2.4 では、この件に関しては修正されているようですが、正規表現に関しては、他にもいろんなパタンが考えられるので、基本的に、外部に公開するインタフェースでは使わない方が良いと思います。(常識ですね;;)