Hacking:Problems and solutions: Difference between revisions

From Seamly
Content added Content deleted
No edit summary
No edit summary
 
(One intermediate revision by the same user not shown)
Line 2: Line 2:


== Build ==
== Build ==
=== MSVS error: C2065: 'not': undeclared identifier===
=== MSVS error: C2065: 'not': undeclared identifier ===
'''Problem:''' Building with MSVS fail with error C2065: 'not': undeclared identifier.<br />
'''Problem:''' Building with MSVS fail with error C2065: 'not': undeclared identifier.<br />
'''Cause:''' By default MSVS doesn't support [https://en.wikipedia.org/wiki/C_alternative_tokens C++ alternative tokens].<br />
'''Cause:''' By default MSVS doesn't support [https://en.wikipedia.org/wiki/C_alternative_tokens C++ alternative tokens].<br />
Line 12: Line 12:
#endif /* Q_CC_MSVC */
#endif /* Q_CC_MSVC */
</source>
</source>

=== Rebuilding stuck on updating translations stage ===
'''Problem:''' Rebuilding is slow because rebuilding translations.<br />
'''Cause:''' Usually qmake runs only one time. And in this time we really need to call rebuild all translations.<br />
'''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 ===
'''Problem:''' Build error: definition of macro 'LATEST_TAG_DISTANCE' differs between the precompiled header ('xxxx') and the command line ('xxxx').<br />
'''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.<br />
'''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.

Latest revision as of 17:25, 13 June 2016

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.