1

プロジェクトのログには ezlogger ライブラリを使用しています。OSX Maverick をアップグレードした後、コードをコンパイルできません。ロギング マクロのコンパイル中に g++ コンパイラがエラーをスローします。エラーメッセージ:

In file included from ./../ezlogger/ezlogger_headers.hpp:16:
./../ezlogger/ezlogger.hpp:113:29: error: use of undeclared identifier 'get_verbosity_level_tolerance'
                        if (m_verbosity_level <= get_verbosity_level_tolerance())
                                                 ^
./../ezlogger/ezlogger.hpp:118:6: error: use of undeclared identifier 'get_log_stream'
                                        get_log_stream() << Data;
                                        ^
./../ezlogger/ezlogger.hpp:124:29: error: use of undeclared identifier 'get_verbosity_level_tolerance'
                        if (m_verbosity_level <= get_verbosity_level_tolerance())
                                                 ^
./../ezlogger/ezlogger.hpp:129:6: error: use of undeclared identifier 'get_log_stream'
                                        get_log_stream() << func;
                                        ^
./../ezlogger/ezlogger.hpp:135:29: error: use of undeclared identifier 'get_verbosity_level_tolerance'
                        if (m_verbosity_level <= get_verbosity_level_tolerance())
                                                 ^
./../ezlogger/ezlogger.hpp:140:29: error: use of undeclared identifier 'get_verbosity_level_tolerance'
                        if (m_verbosity_level <= get_verbosity_level_tolerance())
                                                 ^
./../ezlogger/ezlogger.hpp:145:29: error: use of undeclared identifier 'get_verbosity_level_tolerance'
                        if (m_verbosity_level <= get_verbosity_level_tolerance())
                                                 ^
./../ezlogger/ezlogger.hpp:151:29: error: use of undeclared identifier 'get_verbosity_level_tolerance'
                        if (m_verbosity_level <= get_verbosity_level_tolerance())
                                                 ^

get_verbosity_level_tolerance()のコードは次のとおりです。

    struct ezlogger_verbosity_level_policy
    {
            static inline verbosity get_verbosity_level_tolerance(){return set_or_get_verbosity_level_tolerance(true);}
            static void set_verbosity_level_tolerance(verbosity NewValue){set_or_get_verbosity_level_tolerance(false, NewValue);}
    private:
            inline static verbosity initial_verbosity_level(){return log_default_verbosity_level;}
            static verbosity set_or_get_verbosity_level_tolerance(bool GetLevel, verbosity NewValue = log_default_verbosity_level)
            {
                    static verbosity verbosity_level = initial_verbosity_level();
                    if (!GetLevel) verbosity_level = NewValue;
                    return verbosity_level;
            }
    };

どうすればこれを解決できますか?

4

1 に答える 1