わいえむねっと

Contents
Categories
Calendar
2026/08
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
Monthly Archives
~2000/01
Recent Entries
RSS1.0
Templates
Information
Processed: 0.169 sec
Chashed: -
2008/08/22 Fri
進展しません。
現調の状況が。
ハード絡みの待ちが発生するばかりで遅々として進まず。 昨日は飲みすぎませんでしたが、今日は飲みすぎました。
もうどうにでもすればいいじゃない!小坂那也です。(挨拶)
どうにでもした結果がこれなわけですが。
もうどうにでもゆっくりしていってね!
協力会社の新人「今までどうもありがとうございました!また明日!」
魚「また明日!」

というわけで、明日は飲み会です。
送別会というわけでもない飲み会です。
多分、兼送別会ということになると思われますが。
というか、私は出席できるのでしょうか。はたして。
2008/08/21 Thu
久々のウイスキーだったので飲みすぎてない! なにを根拠に発言しているのですか。
殴りますよ。
2008/08/20 Wed
・atexit
そもそもlibc_nonshared.aにしか含まれない関数に例外条項が適用されてないておかしくないかと思ったら、glibc-2.3.4 から適用されてた。
ああ。
開発環境が古いのが悪い。

glibc-2.3.4/ChangeLog
2004-08-15 Roland McGrath <roland@frob.com>

* csu/elf-init.c: Update copyright terms including special exception
for these trivial files, which are statically linked into executables
that use dynamic linking for the significant library code.
* io/fstat.c: Likewise.
* io/fstat64.c: Likewise.
* io/lstat.c: Likewise.
* io/lstat64.c: Likewise.
* io/stat.c: Likewise.
* io/stat64.c: Likewise.
* stdlib/atexit.c: Likewise.
* sysdeps/alpha/elf/initfini.c: Likewise.
* sysdeps/alpha/elf/start.S: Likewise.
* sysdeps/arm/elf/start.S: Likewise.
* sysdeps/cris/elf/start.S: Likewise.
* sysdeps/generic/initfini.c: Likewise.
* sysdeps/generic/mknod.c: Likewise.
* sysdeps/hppa/elf/initfini.c: Likewise.
* sysdeps/hppa/elf/start.S: Likewise.
* sysdeps/i386/elf/start.S: Likewise.
* sysdeps/i386/i686/hp-timing.c: Likewise.
* sysdeps/ia64/elf/initfini.c: Likewise.
* sysdeps/ia64/elf/start.S: Likewise.
* sysdeps/ia64/hp-timing.c: Likewise.
* sysdeps/m68k/elf/start.S: Likewise.
* sysdeps/mach/start.c: Likewise.
* sysdeps/mips/elf/start.S: Likewise.
* sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
* sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
* sysdeps/s390/s390-32/elf/start.S: Likewise.
* sysdeps/s390/s390-32/initfini.c: Likewise.
* sysdeps/s390/s390-64/elf/start.S: Likewise.
* sysdeps/s390/s390-64/initfini.c: Likewise.
* sysdeps/sh/elf/initfini.c: Likewise.
* sysdeps/sh/elf/start.S: Likewise.
* sysdeps/sparc/sparc32/elf/start.S: Likewise.
* sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
* sysdeps/sparc/sparc64/elf/start.S: Likewise.
* sysdeps/sparc/sparc64/hp-timing.c: Likewise.
* sysdeps/standalone/i386/start.S: Likewise.
* sysdeps/standalone/i960/start.S: Likewise.
* sysdeps/standalone/m68k/m68020/start.S: Likewise.
* sysdeps/unix/arm/start.c: Likewise.
* sysdeps/unix/bsd/osf/alpha/start.S: Likewise.
* sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
* sysdeps/unix/sparc/start.c: Likewise.
* sysdeps/unix/start.c: Likewise.
* sysdeps/unix/sysv/aix/start.s: Likewise.
* sysdeps/unix/sysv/irix4/start.c: Likewise.
* sysdeps/x86_64/elf/initfini.c: Likewise.
* sysdeps/x86_64/elf/start.S: Likewise.

派生派生部分改修部分改修てつくりかたをいい加減改めるべき。 久々にウイスキーを。
ここのところ焼酎飲みすぎなので。
2008/08/19 Tue
うん。
飲みすぎだ。
親子丼おにぎりを吐きそうになりながら租借。(そんな状態で、なぜそのチョイス) 本格的なプロジェクト構成メンバ解体。
とりあえず笑っておくよ。
2008/08/18 Mon
やっぱり眼球痙攣。 唐突に会議室に呼ばれたので、やもやまた開発環境が変更か!すわ!と思いきや、数年前に一緒に仕事してた協力さんが。
お元気そうでなによりでした。 顔面が猛烈に痒い@会社
下の階が改装工事してるからその影響か。
2008/08/17 Sun
CF-IDE変換にさらにIDE-SCSI変換かましたCFにFreeBSD 7.0インストール。 微妙に眼球痙攣。
2008/08/16 Sat
640MB以上だとセクタサイズが2048byteになってしまうからと注文していた540MBのMOディスクが到着。

けど解決せず。

ふて寝。 数百メートル先でばんばん雷が落ちてて地響きがするんですが。
雷怖い!
というか、停電怖い!
2008/08/15 Fri
ゴマサケー サケイクラー。(上がり調子で) すっかり忘れてた機能を実装して。
シーケンスの微調整して。 LGPL!LGPL!(姉DVD的な勢いで)
メリケンから提供されているライブラリをリンクするとlibc_nonshared.aからatexit.oSがリンクされるので大丈夫なのかこれと思ったら、

glibc-2.2.4/stdlib/atexit.c
/* Copyright (C) 1991, 1996, 1999, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.

The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */

LGPLが適用されますね。駄目だ。
というわけだけどそこのところどうなのと問い合わせてみたところ、そんなの使ってないよ!なにそれ!とか返ってきたので勘弁してくだちぃと調べてみたところ、どうもプロセス終了時に静的オブジェクトのデストラクタを呼び出す目的で使用されるらしい。
検証してみる。

$ cat foo.cc
class Foo
{
public:
#ifdef _DESTRUCTOR
    ~Foo(){};
#endif
};

void main()
{
#ifdef _STATIC
    static Foo foo;
#else
    Foo foo;
#endif
}

$ g++ foo.cc -t
/usr/bin/ld: mode elf_i386
/usr/lib/crt1.o
/usr/lib/crti.o
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/crtbegin.o
/tmp/ccKwoxkQ.o
-lm (/usr/lib/libm.so)
/lib/libc.so.6
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/crtend.o
/usr/lib/crtn.o

$ g++ foo.cc -t -D_DESTRUCTOR
/usr/bin/ld: mode elf_i386
/usr/lib/crt1.o
/usr/lib/crti.o
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/crtbegin.o
/tmp/ccDNKWDz.o
-lm (/usr/lib/libm.so)
(/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/libgcc.a)_eh.o
(/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/libgcc.a)exception.o
(/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/libgcc.a)frame.o
(/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/libgcc.a)opdel.o
(/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/libgcc.a)tinfo.o
(/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/libgcc.a)tinfo2.o
/lib/libc.so.6
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/crtend.o
/usr/lib/crtn.o

$ g++ foo.cc -t -D_STATIC
/usr/bin/ld: mode elf_i386
/usr/lib/crt1.o
/usr/lib/crti.o
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/crtbegin.o
/tmp/cceZe7L5.o
-lm (/usr/lib/libm.so)
/lib/libc.so.6
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/crtend.o
/usr/lib/crtn.o

$ g++ foo.cc -t -D_DESTRUCTOR -D_STATIC
/usr/bin/ld: mode elf_i386
/usr/lib/crt1.o
/usr/lib/crti.o
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/crtbegin.o
/tmp/ccIlZDxP.o
-lm (/usr/lib/libm.so)
(/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/libgcc.a)opdel.o
(/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/libgcc.a)_eh.o
(/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/libgcc.a)exception.o
(/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/libgcc.a)frame.o
(/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/libgcc.a)tinfo.o
(/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/libgcc.a)tinfo2.o
/lib/libc.so.6
<span style=color:red>(/usr/lib/libc_nonshared.a)atexit.oS</span>
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/crtend.o
/usr/lib/crtn.o

確かに。
ということは、staticにしないかデストラクタを取っ払えと。
いや、根本的につくりかえなきゃだめじゃね?それ。
ライブラリ側の話だからいいっちゃいいけど。うーん。
2008/08/14 Thu
新プロジェクトの方の話を少し進める。
.Net Framework使った開発してみたいなーと思っていたのでその方向で話を進めてみる。 取締役から唐突に会議室に呼ばれた。
どこかの会社の営業さんと協力会社の社長がいた。
なんかRubyの話とかした。
ああ、なにか嫌な予感がするなと思った。
新プロジェクトはRubyで開発することになりました。

Perl信奉者になんたる仕打ち! 飲みすぎた。
すごい勢いで飲みすぎた。
昨日も言っていた気がするのは気にしない方向で進めたい。
2008/08/13 Wed
キーマカレーおむすびと、とんかつサンドでカツカレー気分。小坂那也です。(挨拶)
君の脳はいつも幸せそうだなとか言われた。
まぁ。概ね。 デミタス。
デミタス。
デミタス。 飲みすぎた。
デミタスじゃなくてアルコールを。
言わずもがな。
言わずもがな。はい。