Сборка Qt 4 с помощью компилятора Intel = нерешенная ошибка

Я пытался собрать Qt 4.7.2 с помощью компилятора Intel Parallel Studio и заметил, что, в отличие от vcc, он не работает с сообщением об ошибке:

Катастрофическая ошибка: невозможно открыть предварительно скомпилированный заголовочный файл qmake_pch.pchi

Поиск сообщения в Google дал одну единственную ссылку: https://bugreports.qt.io/browse/QTBUG-15390

В нем говорится, что проблема в настоящее время не решена, но упоминается обходной путь:

Чтобы обойти это, необходимо настроить CFLAGS в Makefile для создания собственного файла pch, например:

CFLAGS = -Yc -FIqmake_pch.h -Fpqmake_pch.pch $(CFLAGS_BARE) $(CFLAGS)

Однако добавление этих строк в конфигурацию qmake win32-icc мне ничего не дало.

Любые идеи?


person Dian    schedule 15.04.2011    source источник


Ответы (2)


Предварительно скомпилированные заголовки — это оптимизация сборки. Если они вызывают проблемы, просто соберите Qt без них. В любом случае это одноразовая сборка, если вы не работаете над самим Qt.

person MSalters    schedule 15.04.2011
comment
Nokia предлагает сборки только с MigW и msvc, которые не интегрируются в Visual Studio с помощью компилятора Intel, они также предлагают исходные библиотеки, которые я не могу собрать с помощью компилятора Intel, чтобы вообще иметь возможность использовать Qt. Как собрать без предварительно скомпилированного заголовка? И не вызовет ли это проблем в дальнейшем? - person Dian; 15.04.2011
comment
Вы строите без предварительно скомпилированных заголовков, удаляя соответствующие флаги. Это не вызовет проблем, если удалить их все, за исключением, конечно, медленной сборки. - person MSalters; 18.04.2011

Вызов configure запускает qmake, а qmake создает Makefile в папке «qmake» исходного дерева непосредственно перед катастрофической ошибкой. Вам нужно отредактировать этот файл вместо редактирования файла конфигурации qmake. Search for the

CFLAGS = -Yuqmake_pch.h -FIqmake_pch.h -Fpqmake_pch.pch $(CFLAGS_BARE) $(CFLAGS)

строку в "qmake/Makefile" и измените ее на

CFLAGS = -Yc -FIqmake_pch.h -Fpqmake_pch.pch $(CFLAGS_BARE) $(CFLAGS)

Теперь сделайте отредактированный Makefile доступным только для чтения с помощью проводника! Затем позвоните в

configure -platform win32-icc

снова! Сценарий configure попытается перезаписать Makefile, но безуспешно. Теперь Makefile готов, и процесс настройки завершится.

person Furkan Kıraç    schedule 03.12.2011