Я думаю, что вы столкнулись с известной ошибкой Qt, о чем сообщается в официальном трекере ошибок здесь: https://bugreports.qt.io/browse/QTBUG-60771
Вкратце, между Qt 5.6 и Qt 5.8 произошли изменения в способе QSystemSemaphore (который используется QSharedMemory ) создавать свои ключи. Было обнаружено, что метод, используемый для создания ключей, может вызвать столкновения.
Несовместимость задокументирована в журнале изменений для Qt 5.9 здесь: https://code.qt.io/cgit/qt/qtbase.git/tree/dist/changes-5.9.0/?h=v5.9.0
[QTBUG-60771] Reverted a change that caused Qt 5.6 through 5.8 not to
connect to QSystemSemaphore and QSharedMemory created by running
applications using Qt earlier than 5.6. Unfortunately, this means that Qt
5.9 will not connect to 5.6-5.8.
Вы можете поэкспериментировать с методом QSharedMemory :: setNativeKey () для принудительной установки собственных ключей (и, таким образом, имен файлов в каталоге / tmp). Хотя это означает, что вам следует изменить и перекомпилировать обе версии программного обеспечения.
Боюсь, что "официальное" решение состоит в том, чтобы гарантировать, что вы используете только одну версию Qt в то время.