Частные Заголовки выпускают компиляцию QtWebKit 5.212 против Qt 5.10.1 - PullRequest
0 голосов
/ 21 сентября 2018

В Windows 10, Visual Studio 2015, я собираю QtWebKit (5.212) для Qt 5.10.1, и у меня возникает ошибка во время части конфигурации сборки.

Воткомандная строка, которую я использую:

perl Tools\Scripts\build-webkit --qt --release --only-webkit --no-ninja --cmakeargs="-Thost=x64 -DCMAKE_GENERATOR_PLATFORM=x64" -G \"Visual Studio 14 2015 Win64\" --prefix=E:\Qt-5.10.1\QtWebKitBin -v

Вот ошибка:

-- Performing Test Qt5Gui_PRIVATE_HEADER_FOUND
-- Performing Test Qt5Gui_PRIVATE_HEADER_FOUND - Failed
CMake Error at Source/cmake/OptionsQt.cmake:75 (message):
  Header private/qhexstring_p.h is not found.  Please make sure that:

      1. Private headers of Qt5Gui are installed
      2. Qt5Gui_PRIVATE_INCLUDE_DIRS is correctly defined in Qt5GuiConfig.cmake
Call Stack (most recent call first):
  Source/cmake/OptionsQt.cmake:612 (CHECK_QT5_PRIVATE_INCLUDE_DIRS)
  Source/cmake/WebKitCommon.cmake:50 (include)
  CMakeLists.txt:139 (include)


-- Configuring incomplete, errors occurred!

Закрытый заголовок, который он использует для выполнения теста, существует в каталоге включения Qt5, как и следовало ожидатьв этом месте:

E:\Qt-5.10.1\QtBin\include\QtGui\5.10.1\QtGui\private\qhexstring_p.h

Файл Qt5GuiConfig.cmake существует только в каталоге E:\Qt-5.10.1\QtBin\lib\cmake\Qt5Gui установки Qt (не в исходной установке QtWebKit).Я не знаю, использует ли он это каким-либо образом.

Что мне нужно сделать, чтобы сборка нашла этот каталог по желанию?Добавление 'include \ QtGui \ 5.10.1 \ QtGui \' в INCLUDE env var не работает, но я все равно не верю, что это правильное решение.

Вот части моей среды, связанные скаталоги Qt:

INCLUDE = ...;E:\Qt-5.10.1\QtBin\include;E:\Qt-5.10.1\qt-everywhere-src-5.10.1\include
LIB = ...;E:\Qt-5.10.1\QtBin\lib;E:\Qt-5.10.1\qt-everywhere-src-5.10.1\lib
PATH = E:\Qt-5.10.1\qt-everywhere-src-5.10.1\qtbase\bin;E:\Qt-5.10.1\qt-everywhere-src-5.10.1\gnuwin32\bin;E:\Qt-5.10.1\QtBin\bin;...

QtBin - это каталог с моим скомпилированным Qt 5.10.1.

qt-everywhere-src-5.10.1 - это исходный пакет Qt 5.10.1

Заранее благодарю за любую помощь.Я не смог найти ответы в поиске в Google или StackOverflow.

1 Ответ

0 голосов
/ 13 мая 2019

Согласно вики , вы должны попытаться определить CMAKE_PREFIX_PATH, чтобы он указывал на вашу установку Qt

Например:

perl Tools\Scripts\build-webkit --qt --release --only-webkit --no-ninja --cmakeargs="-Thost=x64 -DCMAKE_GENERATOR_PLATFORM=x64 -DCMAKE_PREFIX_PATH=c:\Qt\Qt5.6.0\5.6\msvc2015" -G \"Visual Studio 14 2015 Win64\" --prefix=E:\Qt-5.10.1\QtWebKitBin -v
...