Qt源码解析-QCefView编译

Qt源码解析 索引

环境配置

1. CMake:

最低要求版本为3.19.1,推荐使用最新版本

2. Qt

QCefView是基于Qt框架的,同时支持Qt 5.x和6.x版本。安装Qt之后请确保设置了QTDIR环境变量,使其指向Qt工具链目录,例如:

Windows平台:

set QTDIR=C:\Qt\6.2.2\msvc2019_64

macOS平台:

export QTDIR=/usr/local/Cellar/qt5/5.4.1/clang_64

Linux平台:

export QTDIR=/usr/share/Qt/6.2.2/gcc_64

编译构建

从https://github.com/CefView/QCefView检出最新代码,不要忘记初始化submodule。该项目依赖子模块:https://github.com/CefView/CefViewCore。

 git submodule update --init --recursive   

Windows

# Generate VS projects
generate-win-proj.bat
# Build from cmake
cmake --build .build/Windows

生成项目之后也可以在目录.build/Windows中找到Visual Studio项目文件,使用Visual Studio打开和编译。

macOS

# Generate Xcode project
./generate-mac-proj.sh
# Build from cmake 
cmake --build ./build/macOS

生成项目之后也可以在目录.build/macOS中找到Xcode项目文件,使用Xcode打开和编译。

Linux

# Generate Unix Make file project
./generate-linux-proj.sh
# Build from cmake 
cmake --build ./build/Linux

Linux平台推荐使用Qt Creator作为IDE。

CEF:Chromium Embedded Framework

构建过程问题

编译64位版本

编译64位时,如果自己去配置,过程会遇到很多需要修改的东西。库的版本,程序运行初始化需要的东西,很多都会出错。

建议还是直接修改generate-win-proj.bat文件内容,使用工具生成64位

cmake -S . -B .build/Windows -DBUILD_DEMO=ON -G "Visual Studio 15 2017 Win64"

运行初始化

int _retval = cef_initialize( &args, &settings, CefAppCppToC::Wrap(application), windows_sandbox_info);

崩溃。查找好久原因,特别是再cef不熟悉的情况下

解决方法:把CEFDIR/Resources目录下的内容拷贝到CEF/Release(或Debug)下即可。CEF需要里面的icudtl.dat、语言文件等

你可能感兴趣的:(Qt,QCefView,windows编译,cef_initialize,CEF,Chromium)