2004年11月24日
boost-1.32.0
boost-1.32.0を入れてo2onをコンパイルしなおしてみた。
c:\Program Files\Microsoft Visual Studio .NET\Vc7\include\boost-1_32\boost\format\format_implementation.hpp(216): error C2244: 'boost::basic_format<Ch,Tr,Alloc>::size' : unable to match function definition to an existing declaration…。
しょうがないのでなんとなく1.31.0を入れなおした。
==== VS.net 2002 and VCTK2003 ver.1.01 ============================
VS.netにVCToolkitを上書きしておく
Plathome SDKも入れてpathをいじっておく
==== STLport-4.6.2 ================================================
/srcに移動しvsvars32.bat実行
** stl_user_config.hに **
#ifdef NDEBUG
#undef _STLP_DEBUG
#else
#define _STLP_DEBUG 1
#endif
** を書き込む **
> set MSVCDIR=C:\Program Files\Microsoft Visual Studio .NET\Vc7
> copy vc71.mak makefile
** makefileの該当部分を **
EXTRA_COMMON_FLAGS=/FI "vc_warning_disable.h" /D "_MBCS" /Zc:wchar_t
** に書き換え(/Zc:wchar_tを追加) **
> nmake clean all
> nmake install
Headers C:\Program Files\Microsoft Visual Studio .NET\Vc7\include\stlport
Libs C:\Program Files\Microsoft Visual Studio .NET\Vc7\lib
ファイルがコピーされるのでそれぞれIDEを設定
==== boost-1.31.0 with regex patch ================================
vsvars32.bat実行
> set STLPORT_PATH=L:\libs\STLport-4.6.2\stlport
> set STLPORT_VERSION=4.6.2
> set STLPORT_4.6.2_PATH=L:\libs\STLport-4.6.2
> bjam -sTOOLS=vc7.1-stlport -sVC71_ROOT="C:\Program Files\Microsoft Visual Studio .NET\Vc7" -sBUILD="<native-wchar_t>on" --prefix="C:\Program Files\Microsoft Visual Studio .NET\Vc7" install
Headers C:\Program Files\Microsoft Visual Studio .NET\Vc7\include\boost-1_31\boost
Libs C:\Program Files\Microsoft Visual Studio .NET\Vc7\lib
ファイルがコピーされるのでそれぞれIDEを設定
===================================================================
stringアルゴリズム使いたかったのにぃ
投稿者 f99aq : 22:55 | コメント (0) | トラックバック
2004年11月18日
車輪の唄 - BUMP OF CHICKEN がシングルで出るらしい
|
投稿者 f99aq : 22:03 | コメント (1) | トラックバック
2004年11月16日
キー交換のどーのこーの ver.2
ちょっと修正
・自分がキャッシュを保持しているキーは各ノード addr=127.0.0.1, port=自port として保持しておく。
・キー交換時に自分が firewalled かどうかも相手に教える。
・B(nodeB)からキー(key)が入ってきたとき、
if (key.addr == 127.0.0.1) {
key.addr = nodeB.addr;
// port そのまま
key.firewalled = nodeB.firewalled;
} else {
// addr, port そのまま
key.firewalled = false;
}
keys.insert(key);
・B(nodeB)にキー(key)を投げるとき、
if (key.addr != nodeB.addr) {
Key tmp = key;
if (tmp.firewalled || rand() % 100 == 0) {
tmp.addr = 127.0.0.1;
tmp.port = myPort;
}
sendkey(tmp);
} else {
// 投げない
}
投稿者 f99aq : 02:38 | コメント (0) | トラックバック
2004年11月09日
o2on開発続報
zlib 1.2.2 に ver up。
gzipの解凍によくわからないバグがあるから解凍部分をちょっといじったけど、ほとんど元と同じに。
datキャッシュのファイル名ハッシュ化をMD5からSHA-1に…。
P2P 2ch(勝手に名前付けたが)関係部分をほとんどコメントアウト。GUIもだいぶ削りほぼ作り直しみたいな状態に。
公開には当分…
投稿者 f99aq : 00:27 | コメント (0) | トラックバック
2004年11月04日
キー交換のどーのこーの
変な擬似コードでメモ
・起動直後は全ノード firewalled。外部からの接続を検出した段階で firewalled = false に
自ノード←─→B(他o2onノード)
class Key {
string guid;
unsigned long addr;
unsigned short port;
bool firewalled;// デフォルトでfalse
//以下省略
}
自分がキャッシュを保持しているキーは各ノード addr=127.0.0.1, port=自port として保持しておく
Bからキーが入ってきたとき
if (addr == 127.0.0.1) {
addr = B Addr
// port そのまま
firewalled flagもキーに書き込む(Bがfirewalledかどうか)
} else {
そのまま
firewalledはfalseのはず
}
Bにキーを投げるとき
if (addr != B Addr) {
if (firewalled) {
addr = My Addr
port = My Port
} else {
if (転送するか) {
addr = My Addr
port = My Port
}
}
}
投稿者 f99aq : 23:39 | コメント (0) | トラックバック
2004年11月01日
Blog作成
サイト更新がめんどくさくなってきたので、
Blogにしてみたりしてみた。