diff --git a/config.tests/unix/precomp.test b/config.tests/unix/precomp.test
index f7c5a0275c2f85e2b6b9d7e294a2f8f4f2c5ddaf..9ffea20ff9b395747f2677a9b6ef2bc620797845 100755
--- a/config.tests/unix/precomp.test
+++ b/config.tests/unix/precomp.test
@@ -27,7 +27,7 @@ EOF
     rm -f header.pchi header.o source.o
     ;;
 
-*g++*|c++)
+*g++*|c++|*qcc*)
     case `"$COMPILER" -dumpversion 2>/dev/null` in
     3.*)
         ;;
diff --git a/mkspecs/common/qcc-base.conf b/mkspecs/common/qcc-base.conf
index 7f4cc3e0a2bdfdd9e7becc0a3b11f9756bf102c1..3207a42a83e12a60134cc22023ea251c861347e7 100644
--- a/mkspecs/common/qcc-base.conf
+++ b/mkspecs/common/qcc-base.conf
@@ -42,6 +42,11 @@ QMAKE_CXXFLAGS_APP        += $$QMAKE_CFLAGS_APP
 QMAKE_CXXFLAGS_YACC       += $$QMAKE_CFLAGS_YACC
 QMAKE_CXXFLAGS_HIDESYMS   += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
 
+QMAKE_CFLAGS_PRECOMPILE       = -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_CFLAGS_USE_PRECOMPILE   = -Wc,-include -Wc,${QMAKE_PCH_OUTPUT_BASE}
+QMAKE_CXXFLAGS_PRECOMPILE     = -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
+
 QMAKE_LFLAGS         += -lang-c++
 QMAKE_LFLAGS_DEBUG   += -lang-c++
 QMAKE_LFLAGS_APP     += -lang-c++