Hacking:Problems and solutions

    From Seamly2D

    Build[edit | edit source]

    MSVS error: C2065: 'not': undeclared identifier[edit | edit source]

    Problem: Building with MSVS fail with error C2065: 'not': undeclared identifier.
    Cause: By default MSVS doesn't support C++ alternative tokens.
    Solution: MSVS require the header to be included in order to use these identifiers.

    #ifdef Q_CC_MSVC
        #include <ciso646>
    #endif /* Q_CC_MSVC */

    Rebuilding stuck on updating translations stage[edit | edit source]

    Problem: Rebuilding is slow because rebuilding translations.
    Cause: Usually qmake runs only one time. And in this time we really need to call rebuild all translations.
    Solution: Run qmake second time. qmake will find that localization files already exist and skip this call in a makefile.

    Error: definition of macro 'LATEST_TAG_DISTANCE' differs between the precompiled header[edit | edit source]

    Problem: Build error: definition of macro 'LATEST_TAG_DISTANCE' differs between the precompiled header ('xxxx') and the command line ('xxxx').
    Cause: The macro 'LATEST_TAG_DISTANCE' shows distance between the last release and current commit. This information was changed since last creating precompiled headers. Most probable you made new commit or switched to new.
    Solution: You have two options. Use for building Debug mode. In this mode you don't need to worry about the macro. Or call full rebuild each time such an error occur.