Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/148.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;在Linux机器上使用cmake Qt5 Webkit交叉编译(使用mingw针对Windows)失败_C++_Cmake_Webkit_Qt5_Mingw - Fatal编程技术网

C++ C++;在Linux机器上使用cmake Qt5 Webkit交叉编译(使用mingw针对Windows)失败

C++ C++;在Linux机器上使用cmake Qt5 Webkit交叉编译(使用mingw针对Windows)失败,c++,cmake,webkit,qt5,mingw,C++,Cmake,Webkit,Qt5,Mingw,首先,到目前为止,我不可能在谷歌上找到答案。我会尽可能多地描述,我正在寻求关于我做错了什么的建议,要知道我在这方面绝对不是专家。我的目标是创建一个C++的Qt5 WebKIT窗口,它将在Linux和Windows上运行。它在linux上编译并工作得非常好,但在windows上编译失败,如下面所示。我会感谢你在这方面的任何帮助,我被卡住了 OS:Kubuntu 19.04 内核:5.0.0-21.22 项目树如下所示 ├── bin ├── build ├── CMakeLists.txt ├──

首先,到目前为止,我不可能在谷歌上找到答案。我会尽可能多地描述,我正在寻求关于我做错了什么的建议,要知道我在这方面绝对不是专家。我的目标是创建一个C++的Qt5 WebKIT窗口,它将在Linux和Windows上运行。它在linux上编译并工作得非常好,但在windows上编译失败,如下面所示。我会感谢你在这方面的任何帮助,我被卡住了

OS:Kubuntu 19.04

内核:5.0.0-21.22

项目树如下所示

├── bin
├── build
├── CMakeLists.txt
├── lib
├── platforms
│   ├── linux.cmake
│   └── windows.cmake
├── src
│   ├── CMakeLists.txt
│   └── main.cpp
└── tests
/CMakeLists.txt
文件包含

project(custom_webkit)
cmake_minimum_required(VERSION 3.7.0)

set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED 17)

set(CMAKE_BUILD_TYPE Debug)

set(CMAKE_CXX_FLAGS "-Wall -Wextra")
set(CMAKE_CXX_FLAGS_DEBUG "-g -O0")
set(CMAKE_CXX_FLAGS_RELEASE "-O3")

set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)

add_subdirectory(src)
add_executable(${PROJECT_NAME} main.cpp)

find_package(Qt5 COMPONENTS REQUIRED
    Core
    Widgets
    WebKit
    WebKitWidgets
    WebView
    PrintSupport
    Quick
)

target_link_libraries(${PROJECT_NAME}
    Qt5::Core
    Qt5::Widgets
    Qt5::WebKit
    Qt5::WebKitWidgets
    Qt5::WebView
    Qt5::PrintSupport
    Qt5::Quick
)
set(CMAKE_SYSTEM_NAME Windows)
set(CMAKE_CROSSCOMPILING TRUE)

set(CMAKE_C_COMPILER /usr/bin/x86_64-w64-mingw32-gcc)
set(CMAKE_CXX_COMPILER /usr/bin/x86_64-w64-mingw32-g++-win32)
set(CMAKE_RC_COMPILER /usr/bin/x86_64-w64-mingw32-windres)

set(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32)

set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

set(Qt5_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5)
set(Qt5Core_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Core)
set(Qt5Gui_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Gui)
set(Qt5Widgets_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Widgets)
set(Qt5WebKit_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5WebKit)
set(Qt5WebKitWidgets_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5WebKitWidgets)
set(Qt5WebView_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5WebView)
set(Qt5PrintSupport_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5PrintSupport)
set(Qt5Network_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Network)
set(Qt5Concurrent_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Concurrent)
set(Qt5DBus_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5DBus)
set(Qt5Qml_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Qml)
set(Qt5Quick_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Quick)
set(Qt5QuickWidgets_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5QuickWidgets)
set(Qt5Xml_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Xml)
#include <QApplication>
#include <QWebView>
#include <iostream>
#include <string>

const std::string uri = "http://testing.example.lan/";

int main(int argc, char **argv)
{
    QApplication app(argc, argv);
    QWebView *view = new QWebView();

    view->resize(800,600);
    view->load(QUrl(QString::fromStdString(uri)));
    view->show();

    return app.exec();
}
/src/CMakeLists.txt文件包含

project(custom_webkit)
cmake_minimum_required(VERSION 3.7.0)

set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED 17)

set(CMAKE_BUILD_TYPE Debug)

set(CMAKE_CXX_FLAGS "-Wall -Wextra")
set(CMAKE_CXX_FLAGS_DEBUG "-g -O0")
set(CMAKE_CXX_FLAGS_RELEASE "-O3")

set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)

add_subdirectory(src)
add_executable(${PROJECT_NAME} main.cpp)

find_package(Qt5 COMPONENTS REQUIRED
    Core
    Widgets
    WebKit
    WebKitWidgets
    WebView
    PrintSupport
    Quick
)

target_link_libraries(${PROJECT_NAME}
    Qt5::Core
    Qt5::Widgets
    Qt5::WebKit
    Qt5::WebKitWidgets
    Qt5::WebView
    Qt5::PrintSupport
    Qt5::Quick
)
set(CMAKE_SYSTEM_NAME Windows)
set(CMAKE_CROSSCOMPILING TRUE)

set(CMAKE_C_COMPILER /usr/bin/x86_64-w64-mingw32-gcc)
set(CMAKE_CXX_COMPILER /usr/bin/x86_64-w64-mingw32-g++-win32)
set(CMAKE_RC_COMPILER /usr/bin/x86_64-w64-mingw32-windres)

set(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32)

set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

set(Qt5_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5)
set(Qt5Core_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Core)
set(Qt5Gui_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Gui)
set(Qt5Widgets_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Widgets)
set(Qt5WebKit_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5WebKit)
set(Qt5WebKitWidgets_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5WebKitWidgets)
set(Qt5WebView_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5WebView)
set(Qt5PrintSupport_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5PrintSupport)
set(Qt5Network_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Network)
set(Qt5Concurrent_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Concurrent)
set(Qt5DBus_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5DBus)
set(Qt5Qml_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Qml)
set(Qt5Quick_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Quick)
set(Qt5QuickWidgets_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5QuickWidgets)
set(Qt5Xml_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Xml)
#include <QApplication>
#include <QWebView>
#include <iostream>
#include <string>

const std::string uri = "http://testing.example.lan/";

int main(int argc, char **argv)
{
    QApplication app(argc, argv);
    QWebView *view = new QWebView();

    view->resize(800,600);
    view->load(QUrl(QString::fromStdString(uri)));
    view->show();

    return app.exec();
}
/platforms/windows.cmake
文件包含

project(custom_webkit)
cmake_minimum_required(VERSION 3.7.0)

set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED 17)

set(CMAKE_BUILD_TYPE Debug)

set(CMAKE_CXX_FLAGS "-Wall -Wextra")
set(CMAKE_CXX_FLAGS_DEBUG "-g -O0")
set(CMAKE_CXX_FLAGS_RELEASE "-O3")

set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)

add_subdirectory(src)
add_executable(${PROJECT_NAME} main.cpp)

find_package(Qt5 COMPONENTS REQUIRED
    Core
    Widgets
    WebKit
    WebKitWidgets
    WebView
    PrintSupport
    Quick
)

target_link_libraries(${PROJECT_NAME}
    Qt5::Core
    Qt5::Widgets
    Qt5::WebKit
    Qt5::WebKitWidgets
    Qt5::WebView
    Qt5::PrintSupport
    Qt5::Quick
)
set(CMAKE_SYSTEM_NAME Windows)
set(CMAKE_CROSSCOMPILING TRUE)

set(CMAKE_C_COMPILER /usr/bin/x86_64-w64-mingw32-gcc)
set(CMAKE_CXX_COMPILER /usr/bin/x86_64-w64-mingw32-g++-win32)
set(CMAKE_RC_COMPILER /usr/bin/x86_64-w64-mingw32-windres)

set(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32)

set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

set(Qt5_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5)
set(Qt5Core_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Core)
set(Qt5Gui_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Gui)
set(Qt5Widgets_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Widgets)
set(Qt5WebKit_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5WebKit)
set(Qt5WebKitWidgets_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5WebKitWidgets)
set(Qt5WebView_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5WebView)
set(Qt5PrintSupport_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5PrintSupport)
set(Qt5Network_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Network)
set(Qt5Concurrent_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Concurrent)
set(Qt5DBus_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5DBus)
set(Qt5Qml_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Qml)
set(Qt5Quick_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Quick)
set(Qt5QuickWidgets_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5QuickWidgets)
set(Qt5Xml_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Xml)
#include <QApplication>
#include <QWebView>
#include <iostream>
#include <string>

const std::string uri = "http://testing.example.lan/";

int main(int argc, char **argv)
{
    QApplication app(argc, argv);
    QWebView *view = new QWebView();

    view->resize(800,600);
    view->load(QUrl(QString::fromStdString(uri)));
    view->show();

    return app.exec();
}
/src/main.cpp
文件包含

project(custom_webkit)
cmake_minimum_required(VERSION 3.7.0)

set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED 17)

set(CMAKE_BUILD_TYPE Debug)

set(CMAKE_CXX_FLAGS "-Wall -Wextra")
set(CMAKE_CXX_FLAGS_DEBUG "-g -O0")
set(CMAKE_CXX_FLAGS_RELEASE "-O3")

set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)

add_subdirectory(src)
add_executable(${PROJECT_NAME} main.cpp)

find_package(Qt5 COMPONENTS REQUIRED
    Core
    Widgets
    WebKit
    WebKitWidgets
    WebView
    PrintSupport
    Quick
)

target_link_libraries(${PROJECT_NAME}
    Qt5::Core
    Qt5::Widgets
    Qt5::WebKit
    Qt5::WebKitWidgets
    Qt5::WebView
    Qt5::PrintSupport
    Qt5::Quick
)
set(CMAKE_SYSTEM_NAME Windows)
set(CMAKE_CROSSCOMPILING TRUE)

set(CMAKE_C_COMPILER /usr/bin/x86_64-w64-mingw32-gcc)
set(CMAKE_CXX_COMPILER /usr/bin/x86_64-w64-mingw32-g++-win32)
set(CMAKE_RC_COMPILER /usr/bin/x86_64-w64-mingw32-windres)

set(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32)

set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

set(Qt5_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5)
set(Qt5Core_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Core)
set(Qt5Gui_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Gui)
set(Qt5Widgets_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Widgets)
set(Qt5WebKit_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5WebKit)
set(Qt5WebKitWidgets_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5WebKitWidgets)
set(Qt5WebView_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5WebView)
set(Qt5PrintSupport_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5PrintSupport)
set(Qt5Network_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Network)
set(Qt5Concurrent_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Concurrent)
set(Qt5DBus_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5DBus)
set(Qt5Qml_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Qml)
set(Qt5Quick_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Quick)
set(Qt5QuickWidgets_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5QuickWidgets)
set(Qt5Xml_DIR /usr/lib/x86_64-linux-gnu/cmake/Qt5Xml)
#include <QApplication>
#include <QWebView>
#include <iostream>
#include <string>

const std::string uri = "http://testing.example.lan/";

int main(int argc, char **argv)
{
    QApplication app(argc, argv);
    QWebView *view = new QWebView();

    view->resize(800,600);
    view->load(QUrl(QString::fromStdString(uri)));
    view->show();

    return app.exec();
}
以下是生成的
/build/src/CMakeFiles/custom_webkit.dir/build.make
文件中与问题相关的部分。在这种情况下,一切看起来都很好

[...]
../bin/custom_webkit: src/CMakeFiles/custom_webkit.dir/main.cpp.o
../bin/custom_webkit: src/CMakeFiles/custom_webkit.dir/custom_webkit_autogen/mocs_compilation.cpp.o
../bin/custom_webkit: src/CMakeFiles/custom_webkit.dir/build.make
../bin/custom_webkit: /usr/lib/x86_64-linux-gnu/libQt5WebKitWidgets.so.5.212.0
../bin/custom_webkit: /usr/lib/x86_64-linux-gnu/libQt5WebView.so.5.12.2
../bin/custom_webkit: /usr/lib/x86_64-linux-gnu/libQt5PrintSupport.so.5.12.2
../bin/custom_webkit: /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5.212.0
../bin/custom_webkit: /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5.12.2
../bin/custom_webkit: /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5.12.2
../bin/custom_webkit: /usr/lib/x86_64-linux-gnu/libQt5Network.so.5.12.2
../bin/custom_webkit: /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.12.2
../bin/custom_webkit: /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5.12.2
../bin/custom_webkit: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.12.2
../bin/custom_webkit: src/CMakeFiles/custom_webkit.dir/link.txt
[...]
这里运行的是针对Linux的
make

user@desktop:~/Development/Projects/cpp/webkit/build$ make
Scanning dependencies of target custom_webkit_autogen
[ 25%] Automatic MOC and UIC for target custom_webkit
[ 25%] Built target custom_webkit_autogen
Scanning dependencies of target custom_webkit
[ 50%] Building CXX object src/CMakeFiles/custom_webkit.dir/main.cpp.o
[ 75%] Building CXX object src/CMakeFiles/custom_webkit.dir/custom_webkit_autogen/mocs_compilation.cpp.o
[100%] Linking CXX executable ../../bin/custom_webkit
[100%] Built target custom_webkit
user@desktop:~/Development/Projects/cpp/webkit/build$
可执行文件按预期工作。 下面是我为Windows构建而没有成功的过程。 第一阶段似乎没有错误

user@desktop:~/Development/Projects/cpp/webkit/build$ rm -rf ./*
user@desktop:~/Development/Projects/cpp/webkit/build$ cmake -DCMAKE_TOOLCHAIN_FILE=../platforms/windows.cmake ..
-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- Check for working C compiler: /usr/bin/x86_64-w64-mingw32-gcc
-- Check for working C compiler: /usr/bin/x86_64-w64-mingw32-gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/x86_64-w64-mingw32-g++-win32
-- Check for working CXX compiler: /usr/bin/x86_64-w64-mingw32-g++-win32 -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/user/Development/Projects/cpp/webkit/build
user@desktop:~/Development/Projects/cpp/webkit/build$
但是生成的
/build/src/CMakeFiles/custom_webkit.dir/build.make
文件中与问题相关的部分,在本例中,您会看到所有的
XXX-NOTFOUND

[...]
../bin/custom_webkit.exe: src/CMakeFiles/custom_webkit.dir/main.cpp.obj
../bin/custom_webkit.exe: src/CMakeFiles/custom_webkit.dir/custom_webkit_autogen/mocs_compilation.cpp.obj
../bin/custom_webkit.exe: src/CMakeFiles/custom_webkit.dir/build.make
../bin/custom_webkit.exe: Qt5::WebKitWidgets-NOTFOUND
../bin/custom_webkit.exe: Qt5::WebView-NOTFOUND
../bin/custom_webkit.exe: Qt5::PrintSupport-NOTFOUND
../bin/custom_webkit.exe: Qt5::WebKit-NOTFOUND
../bin/custom_webkit.exe: Qt5::Quick-NOTFOUND
../bin/custom_webkit.exe: Qt5::Qml-NOTFOUND
../bin/custom_webkit.exe: Qt5::Network-NOTFOUND
../bin/custom_webkit.exe: Qt5::Widgets-NOTFOUND
../bin/custom_webkit.exe: Qt5::Gui-NOTFOUND
../bin/custom_webkit.exe: Qt5::Core-NOTFOUND
../bin/custom_webkit.exe: src/CMakeFiles/custom_webkit.dir/linklibs.rsp
../bin/custom_webkit.exe: src/CMakeFiles/custom_webkit.dir/objects1.rsp
../bin/custom_webkit.exe: src/CMakeFiles/custom_webkit.dir/link.txt
[...]
然后
make
失败,出现以下错误

user@desktop:~/Development/Projects/cpp/webkit/build$ make
Scanning dependencies of target custom_webkit_autogen
[ 25%] Automatic MOC and UIC for target custom_webkit
[ 25%] Built target custom_webkit_autogen
src/CMakeFiles/custom_webkit.dir/build.make:99: *** target pattern contains no '%'.  Stop.
make[1]: *** [CMakeFiles/Makefile2:91: src/CMakeFiles/custom_webkit.dir/all] Error 2
make: *** [Makefile:84: all] Error 2
user@desktop:~/Development/Projects/cpp/webkit/build$
这是第99行吗

../bin/custom_webkit.exe: Qt5::WebKitWidgets-NOTFOUND
关于我的系统的更多信息

root@desktop:~# dpkg -l | grep webkit
ii  libkf5webkit5:amd64                           5.60.0a-0ubuntu1~ubuntu19.04~ppa1           amd64        KDE Integration for QtWebKit.
ii  libqt5webkit5:amd64                           5.212.0~alpha2-22                           amd64        Web content engine library for Qt
ii  libqt5webkit5-dev:amd64                       5.212.0~alpha2-22                           amd64        Web content engine library for Qt - development files
ii  libqtwebkit-dev                               2.3.2-0ubuntu13                             amd64        Web content engine library for Qt - development files
ii  libqtwebkit4:amd64                            2.3.2-0ubuntu13                             amd64        Web content engine library for Qt
ii  libwebkit2gtk-4.0-37:amd64                    2.24.2-0ubuntu0.19.04.1                     amd64        Web content engine library for GTK
ii  qml-module-qtwebkit:amd64                     5.212.0~alpha2-22                           amd64        Qt WebKit QML module

root@desktop:~# dpkg -l | grep mingw
ii  binutils-mingw-w64-i686                       2.32-7ubuntu4+8.3ubuntu2                    amd64        Cross-binutils for Win32 (x86) using MinGW-w64
ii  binutils-mingw-w64-x86-64                     2.32-7ubuntu4+8.3ubuntu2                    amd64        Cross-binutils for Win64 (x64) using MinGW-w64
ii  g++-mingw-w64                                 8.3.0-6ubuntu1+21.1build2                   all          GNU C++ compiler for MinGW-w64
ii  g++-mingw-w64-i686                            8.3.0-6ubuntu1+21.1build2                   amd64        GNU C++ compiler for MinGW-w64 targeting Win32
ii  g++-mingw-w64-x86-64                          8.3.0-6ubuntu1+21.1build2                   amd64        GNU C++ compiler for MinGW-w64 targeting Win64
ii  gcc-mingw-w64                                 8.3.0-6ubuntu1+21.1build2                   all          GNU C compiler for MinGW-w64
ii  gcc-mingw-w64-base                            8.3.0-6ubuntu1+21.1build2                   amd64        GNU Compiler Collection for MinGW-w64 (base package)
ii  gcc-mingw-w64-i686                            8.3.0-6ubuntu1+21.1build2                   amd64        GNU C compiler for MinGW-w64 targeting Win32
ii  gcc-mingw-w64-x86-64                          8.3.0-6ubuntu1+21.1build2                   amd64        GNU C compiler for MinGW-w64 targeting Win64
ii  mingw-w64                                     6.0.0-3                                     all          Development environment targeting 32- and 64-bit Windows
ii  mingw-w64-common                              6.0.0-3                                     all          Common files for Mingw-w64
ii  mingw-w64-i686-dev                            6.0.0-3                                     all          Development files for MinGW-w64 targeting Win32
ii  mingw-w64-tools                               6.0.0-3                                     amd64        Development tools for 32- and 64-bit Windows
ii  mingw-w64-x86-64-dev                          6.0.0-3                                     all          Development files for MinGW-w64 targeting Win64

root@desktop:~# dpkg -l | grep qt5
ii  kde-style-oxygen-qt5                          4:5.16.3-0ubuntu1~ubuntu19.04~ppa1          amd64        Qt decoration for the Oxygen desktop theme
ii  kde-style-qtcurve-qt5:amd64                   1.9-2build3                                 amd64        QtCurve widget style for applications based on Qt 5.x
ii  libaccounts-qt5-1:amd64                       1.15+17.04.20161104.1-0ubuntu1              amd64        QT library for single sign on
ii  libdbusmenu-qt5-2:amd64                       0.9.3+16.04.20160218-1ubuntu1               amd64        Qt implementation of the DBusMenu protocol
ii  libpackagekitqt5-1:amd64                      1.0.1-1                                     amd64        Library for accessing PackageKit using Qt5
ii  libphonon4qt5-4:amd64                         4:4.10.2-1                                  amd64        multimedia framework from KDE using Qt 5 - core library
ii  libpolkit-qt5-1-1:amd64                       0.112.0-6                                   amd64        PolicyKit-qt5-1 library
ii  libpoppler-qt5-1:amd64                        0.74.0-0ubuntu1.2                           amd64        PDF rendering library (Qt 5 based shared library)
ii  libqca-qt5-2:amd64                            2.1.3-2ubuntu2                              amd64        libraries for the Qt Cryptographic Architecture
ii  libqca-qt5-2-plugins:amd64                    2.1.3-2ubuntu2                              amd64        QCA plugins for libqca2
ii  libqt5concurrent5:amd64                       5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 concurrent module
ii  libqt5core5a:amd64                            5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 core module
ii  libqt5dbus5:amd64                             5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 D-Bus module
ii  libqt5designer5:amd64                         5.12.2-1                                    amd64        Qt 5 designer module
ii  libqt5designercomponents5:amd64               5.12.2-1                                    amd64        Qt 5 Designer components module
ii  libqt5gui5:amd64                              5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 GUI module
ii  libqt5help5:amd64                             5.12.2-1                                    amd64        Qt 5 help module
ii  libqt5hunspellinputmethod5:amd64              5.12.2+dfsg-1                               amd64        Qt virtual keyboard - helper library for Hunspell input method
ii  libqt5multimedia5:amd64                       5.12.2-1                                    amd64        Qt 5 Multimedia module
ii  libqt5multimedia5-plugins:amd64               5.12.2-1                                    amd64        Qt 5 Multimedia module plugins
ii  libqt5multimediagsttools5:amd64               5.12.2-1                                    amd64        GStreamer tools for  Qt 5 Multimedia module
ii  libqt5multimediaquick5:amd64                  5.12.2-1                                    amd64        Qt 5 Multimedia Quick module
ii  libqt5multimediawidgets5:amd64                5.12.2-1                                    amd64        Qt 5 Multimedia Widgets module
ii  libqt5network5:amd64                          5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 network module
ii  libqt5networkauth5:amd64                      5.12.2-1                                    amd64        online account access for Qt apps - Library
ii  libqt5opengl5:amd64                           5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 OpenGL module
ii  libqt5opengl5-dev:amd64                       5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 OpenGL library development files
ii  libqt5positioning5:amd64                      5.12.2+dfsg-1                               amd64        Qt Positioning module
ii  libqt5printsupport5:amd64                     5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 print support module
ii  libqt5qml5:amd64                              5.12.2-2                                    amd64        Qt 5 QML module
ii  libqt5quick5:amd64                            5.12.2-2                                    amd64        Qt 5 Quick library
ii  libqt5quickcontrols2-5:amd64                  5.12.2+dfsg-1                               amd64        Qt 5 Quick Controls 2 library
ii  libqt5quickparticles5:amd64                   5.12.2-2                                    amd64        Qt 5 Quick particles module
ii  libqt5quicktemplates2-5:amd64                 5.12.2+dfsg-1                               amd64        Qt 5 Quick Templates 2 library
ii  libqt5quicktest5:amd64                        5.12.2-2                                    amd64        Qt 5 Quick Test library
ii  libqt5quickwidgets5:amd64                     5.12.2-2                                    amd64        Qt 5 Quick Widgets library
ii  libqt5script5:amd64                           5.12.2+dfsg-1                               amd64        Qt 5 script module
ii  libqt5scripttools5:amd64                      5.12.2+dfsg-1                               amd64        Qt 5 script tools module
ii  libqt5sensors5:amd64                          5.12.2-1                                    amd64        Qt Sensors module
ii  libqt5serialport5:amd64                       5.12.2-1                                    amd64        Qt 5 serial port support
ii  libqt5sql5:amd64                              5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 SQL module
ii  libqt5sql5-mysql:amd64                        5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 MySQL database driver
ii  libqt5sql5-sqlite:amd64                       5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 SQLite 3 database driver
ii  libqt5svg5:amd64                              5.12.2-1                                    amd64        Qt 5 SVG module
ii  libqt5test5:amd64                             5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 test module
ii  libqt5texttospeech5:amd64                     5.12.2-1                                    amd64        Speech library for Qt - libraries
ii  libqt5virtualkeyboard5:amd64                  5.12.2+dfsg-1                               amd64        Qt virtual keyboard - public shared library
ii  libqt5waylandclient5:amd64                    5.12.2-1                                    amd64        QtWayland client library
ii  libqt5waylandcompositor5:amd64                5.12.2-1                                    amd64        QtWayland compositor library
ii  libqt5webchannel5:amd64                       5.12.2-1                                    amd64        Web communication library for Qt
ii  libqt5webengine-data                          5.12.2+dfsg-2ubuntu1                        all          Web content engine library for Qt - Data
ii  libqt5webengine5:amd64                        5.12.2+dfsg-2ubuntu1                        amd64        Web content engine library for Qt
ii  libqt5webenginecore5:amd64                    5.12.2+dfsg-2ubuntu1                        amd64        Web content engine library for Qt - Core
ii  libqt5webenginewidgets5:amd64                 5.12.2+dfsg-2ubuntu1                        amd64        Web content engine library for Qt - Widget
ii  libqt5webkit5:amd64                           5.212.0~alpha2-22                           amd64        Web content engine library for Qt
ii  libqt5webkit5-dev:amd64                       5.212.0~alpha2-22                           amd64        Web content engine library for Qt - development files
ii  libqt5webview5:amd64                          5.12.2-1                                    amd64        display web content in a QML application - Library
ii  libqt5webview5-dev:amd64                      5.12.2-1                                    amd64        display web content in a QML application - Development Files
ii  libqt5widgets5:amd64                          5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 widgets module
ii  libqt5x11extras5:amd64                        5.12.2-1                                    amd64        Qt 5 X11 extras
ii  libqt5xml5:amd64                              5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 XML module
ii  libqt5xmlpatterns5:amd64                      5.12.2-1                                    amd64        Qt 5 XML patterns module
ii  libreoffice-qt5                               1:6.2.5-0ubuntu0.19.04.1                    amd64        office productivity suite -- Qt 5 integration
ii  libsignon-qt5-1:amd64                         8.59+17.10.20170606-0ubuntu1                amd64        Single Sign On framework
ii  phonon4qt5:amd64                              4:4.10.2-1                                  amd64        multimedia framework from KDE using Qt 5 - metapackage
ii  phonon4qt5-backend-gstreamer:amd64            4:4.9.0-1                                   amd64        Phonon Qt5 GStreamer 1.0 backend
ii  python3-dbus.mainloop.pyqt5                   5.12.1+dfsg-1                               amd64        D-Bus Qt main loop support for Python 3
ii  python3-pyqt5                                 5.12.1+dfsg-1                               amd64        Python 3 bindings for Qt5
ii  qdbus-qt5                                     5.12.2-1                                    amd64        Qt 5 D-Bus tool
ii  qdoc-qt5                                      5.12.2-1                                    amd64        Qt 5 qdoc tool
ii  qt5-assistant                                 5.12.2-1                                    amd64        Qt 5 Assistant
ii  qt5-default:amd64                             5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 development defaults package
ii  qt5-doc                                       5.11.3-1                                    all          Qt 5 API Documentation
ii  qt5-gtk-platformtheme:amd64                   5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 GTK+ 3 platform theme
ii  qt5-image-formats-plugins:amd64               5.12.2-1                                    amd64        Qt 5 Image Formats module
ii  qt5-qmake:amd64                               5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 qmake Makefile generator tool
ii  qt5-qmake-bin                                 5.12.2+dfsg-4ubuntu1                        amd64        Qt 5 qmake Makefile generator tool — binary file
ii  qt5-qmltooling-plugins:amd64                  5.12.2-2                                    amd64        Qt 5 qmltooling plugins
谢谢您在这方面的帮助。

只是一个建议:

使用Webengine,而不是不推荐使用的webkit

Webengine是一个基于Chromium的web组件,在windows(仅visual studio)和Linux中工作

唯一的“问题”是dosen在android/iOS中不起作用。不支持Mingw,因为需要铬

您可以使用Visuastudio 2019社区版,或者只使用Windows 10 SDK(包括相同的命令行编译器),然后使用从官方Qt站点下载的预编译Qt发行版

我原以为是linux交叉编译器,但现在,我使用一台小型windows笔记本电脑作为辅助编译器引擎…通过teamviewer本地连接,我节省了很多时间


也许你需要一个自动化的软件编译系统…然后,你会花很多时间在像这样的“小问题”上。。。Qt每两个月发布一次新版本…

感谢您回答它的帮助。Webengine在Linux上编译非常出色,但与在Windows上编译完全一样失败。我不在Windows操作系统上开发任何东西,我个人一般不喜欢VS和IDE。我想完全控制开发过程的每一步,不喜欢VS和IDE的延迟,更不用说安全性了。但我会尝试一下,直到找到在Linux上实现它的正确方法为止。虽然Webengine是最新的,但我仍然不知道我的帖子上面的设置有什么问题。我理解你,但有时候,时间就是金钱。Chromium版本不支持MingW。MSVC是windows的本机编译器,所以我认为这是最好的解决方案。使用预构建Qt可以节省大量时间,而且您不需要安装完整的IDE,只需安装windows 10 SDKDo。您有一个官方链接,我可以在那里下载预构建Qt?因为这让我开始头疼。我百分之百同意时间就是金钱,而且当你没有时间花的时候,Windows似乎不是一个可以工作的环境,是不是…cChoose LGPL edition here:。然后,使用Qt在线安装程序选择编译器和版本(例如VS217 64位)