本文列举了一些在WSL上配置Qt编译环境中遇到的一些问题及解决方案
假设你已经拿到了交叉编译链并安装完成
WSL安装QtCreator集成开发环境
sudo apt install qtcreator qtcreator # 打开IDE # qtcreator & # 后台打开IDE
qt.qpa.screen: QXcbConnection: Could not connect to display
- 方案1:指定X server地址(比如mobaxterm自带的x-server)
export DISPLAY=192.168.0.31:0.0 qtcreator # 执行要打开的gui应用;该App将显示到Xserver所在显示器上
- 方案2:为wsl安装GUI
sudo apt install xfce4 # 安装xfce轻量桌面# sudo apt install ubuntu-desktop # 安装ubuntu官方匹配的桌面,占空间大sudo apt install xrdp # 安装远程桌面服务ip addr # 查看wsl ipv4地址
windows上启动远程桌面(Win+R > mstsc > Enter) 输入上面的IP后回车连接bin并输入wsl用户名密码连接
出现xfce4界面,即可执行鼠标操作
中文乱码
sudo vim /etc/locale.gen # 在文件中取消前面的#注释即可sudo locale-gensudo localectl set-locale LANG=en_US.UTF-8
QtCreator交叉编译环境配置
- C编译器
- gdb调试工具
- Qt版本绑定
- 手动创建套件
- 使用指定套件创建 / 编译qt项目 交叉编译好的可执行程序只能拷到arm平台运行,在x86本地无法运行
ld: cannot find -lGL
sudo apt install libglu1-mesa-dev freeglut3-dev
QFontDatabase: Cannot find font directory
# 指定一个包含字体文件的文件夹 # export QT_QPA_FONTDIR=/usr/share/fonts/truetype/wqy # 不支持中文;英文正常中文会乱码 export QT_QPA_FONTDIR=/usr/share/fonts/truetype/wqy # 支持中文显示 # 或者和查找其他字体文件所在目录并导出
xfce4配置中文输入法
- 安装中文输入法
sudo apt install fcitx-sunpinyin
2. 打开输入法配置
- 添加中文输入方式
- 切换到中文输入
命令行交叉编译Qt项目
- qt5.10 qmake构建
. /opt/fsl-imx-wayland/4.14-sumo/environment-setup-aarch64-poky-linux # 载入交叉编译环境cd Projects/Qt/untitled # 切换到qt项目目录mkdir build # 创建编译目录qmake -o build/ # 生成MakeFile到指定目录build/Makefilecd buildmake qmake_allmake# make -j40 # 平行编译;加快编译速度
- qt5.10 cmake构建
. /opt/fsl-imx-wayland/4.14-sumo/environment-setup-aarch64-poky-linux # 载入交叉编译环境cd Projects/Qt/untitled # 切换到qt项目目录mkdir build # 创建编译目录cd build cmake ..cmake --build .# cmake --build . --parallel # 平行编译;加快编译速度
qmake: could not find a Qt installation of ‘’
- 方案1: 导出你的qmake所在目录到PATH变量
- 方案2: 使用qtchooser
sudo apt install qtchooser qtchooser -install qt5.10 /home/jeady/Apps/Qt5.10.1/gcc_64/bin/qmake # qtchooser -l export QT_SELECT=qt5.10
其他相关请在在评论区留言讨论