Linuxでも動きました

Hamigaki.AudioのPOSIX版実装をLinuxで動作確認しようと、VMwareFedora Core 5をインストールしました。
インストール時に開発ツールを選択すると、Boostもインストールされていました。bjamは入っていなかったのでビルドしました。インストールされているライブラリ名にcommon variant tag(コンパイラ名やバージョンなど)がついていないので、bjam変数NO_COMMON_VARIANT_TAGを追加しました。bjam -sNO_COMMON_VARIANT_TAG=1 としてください。
意外とすんなりとコンパイルが通ってしまいましたが、一点だけ問題がありました。

// hamigaki/iostreams/catable.hpp
namespace hamigaki { namespace iostreams {

template<class Source1, class Source2>
class concatenation;

} } // End namespaces iostreams, hamigaki.

// hamigaki/audio/sine_wave.hpp (説明のため、マクロは展開済み)
namespace hamigaki { namespace audio {

class sine_wave_source
{
    // 略
};

} } // End namespaces audio, hamigaki.

namespace hamigaki{namespace iostreams{namespace cat_operators{
    template<typename Component>
    ::hamigaki::iostreams::concatenation<
        hamigaki::audio::sine_wave_source,
        Component
    > operator+( const hamigaki::audio::sine_wave_source& s,
                 const Component& c )
    {
        return ::hamigaki::iostreams::concatenation<
                   hamigaki::audio::sine_wave_source,
                   Component>
                   (s, c);
    };
}}}

g++4.1だと、concatenationが不完全型でエラーになりました。
仕方がないので、catable.hppでconcatenate.hppとloop.hppをインクルードするようにしました。まぁ、前々からあやしいとは思っていたんですけど。
今日の成果物
LinuxでもRegression Testsは100%パスです。(DirectXは除く)