Re: Linuxビルド

ここまで移植した分をsvn/branchesにアップロードしました。Util、script、dbとヘッダーは完全にコンパイルできるようになり、net.cppは部分的にコンパイルできるので、まだ作業が残っています。

_beginthreadにはLinuxの直接的な等価物がないので、代わりにBoostスレッドを使いました。

Tor SOCKSプロキシを使って接続できませんでした。FreenodeのTorポリシーで、彼らの隠しサービスへの接続が必要だからかもしれません:http://freenode.net/irc_servers.shtml#tor

heapchk()はMSVCRTのデバッグ用のもので使われていない。Linuxではno-opに できる。OpenSSLはLinuxでは自動的に/dev/urandomを使ってシードするので、 RandAddSeedPerfmonもno-opにできる。

十分にオフネットでテストするまでネットワークに接続させないでくれ。2台の パソコンがあれば、インターネットを切断して「bitcoin -connect=」で互いに 接続できる。1台はWindows、もう1台はLinuxで。-connectを使えば 192.168.x.xのようなルーティング不可能なアドレスにも接続できる。まだ想定 していなかった不正なデータを送り出したり、ネットワーク上で何か反社会的な ことをしてしまったりして、ネットワークの信頼性に悪影響を与えたくない。

ビルドできる状態のものができたら、テストする時間はある。今実施中の変更に 対するストレステストに含めることができるよ。

mmalmi@cc.hut.fi の書き込み:

util.hでQueryPerformanceCounterをLinuxのgettimeofdayに置き換える #ifdefを作りました。Unicode/ANSIのエラーはwxWidgets 2.9にアップデート したらコード変更なしで解決しました。現在Linuxで出ている唯一のコンパイル エラーはutil.hのheapchk()からのものです。

見つけた移植性のないコードをいくつか修正した: QueryPerformanceCounter printfフォーマット文字列の%I64d Sleep CheckDiskSpace

他に修正すべき移植性のないコードを知っていたら教えてほしい。

debug.logとdb.logは、現在のディレクトリではなく、データファイルと同じ ディレクトリ(%appdata%\Bitcoin)に移動しようと思う。

出典:COPA対ライト裁判の証言の一環として、2024年2月にマルッティ・マルミによりGitHubで公開。完全な書簡アーカイブはmmalmi.github.io/satoshi/で閲覧可能。