fsu0413:没见过这样的操作。
你说的具体是哪个文件?我有空可以去看看。
顺便这种定义应该是不会在pri里加yyy.cpp的吧。。。。
(2020-04-17 12:07) 
下面是qt5.12.8中的部分,其他版本应该也差不多是这样
qtbase\src\corelib\thread\thread.pri如下
SOURCES += \
thread/qmutex.cpp \
...
win32 {
SOURCES += \
thread/qmutex_win.cpp \
thread/qwaitcondition_win.cpp
} else {
...
qtbase\src\corelib\thread\qmutex.cpp如下:
#ifdef QT_LINUX_FUTEX
# include "qmutex_linux.cpp"
#elif defined(Q_OS_MAC)
# include "qmutex_mac.cpp"
#elif defined(Q_OS_WIN)
# include "qmutex_win.cpp"
#else
# include "qmutex_unix.cpp"
#endif
...
很奇怪msvc编译的时候没有报错,mingw编译的时候出现multiple definition错误。
不知是不是mingw编译的时候我禁用了预编译头的原因?