用gcc-linaro-4.9-2016.02-x86_64_arm-linux-gnueabihf交叉编译qt4.8.7支持./configure -qpa linuxfb吗
时间: 2023-08-01 16:14:09 浏览: 160
在交叉编译 Qt 4.8.7 并使用 "-qpa linuxfb" 参数时,需要确保你在编译 Qt 时已经包含了 Qt Linux framebuffer 插件。
在开始编译前,请确保您已经安装了交叉编译工具链,并且已经正确设置了环境变量。您可以按照以下步骤进行编译:
1. 下载 Qt 4.8.7 源代码,并解压缩。
2. 进入源代码目录,执行以下命令:
```
./configure -prefix /usr/local/qt4 -embedded arm -little-endian -no-pch -no-webkit -no-phonon -no-phonon-backend -no-svg -no-qt3support -no-opengl -no-openvg -no-xcursor -no-xfixes -no-xrandr -qconfig arm-linux-gnueabihf -depths 16,24,32 -no-mmx -no-sse -no-sse2 -no-3dnow -no-openssl -no-nis -no-cups -no-glib -no-dbus -no-separate-debug-info -qpa linuxfb
```
3. 执行 `make` 命令进行编译。
4. 执行 `make install` 命令进行安装。
编译完成后,您可以使用 `-qws` 命令行参数启动 Qt 应用程序。如果您需要使用 Qt 的网络模块,您需要在交叉编译时包含 OpenSSL 库。
希望这些步骤可以帮助到您。
相关问题
用gcc-linaro-4.9-2016.02-x86_64_arm-linux-gnueabihf交叉编译qt4.8.7如何支持linuxfb显示
在交叉编译Qt4.8.7时,需要确保已经安装了对应的交叉编译工具链,并且在配置Qt时指定了正确的交叉编译工具路径和Qt的安装路径。
要使Qt支持linuxfb显示,可以在配置Qt时使用以下参数:
```
./configure -embedded arm -prefix /opt/qt4.8.7-arm \
-xplatform qws/linux-arm-gnueabi-g++ \
-depths 16,24,32 \
-no-mmx -no-sse -no-sse2 -no-glib \
-qt-mouse-pc -qt-mouse-linuxtp -qt-mouse-linuxinput \
-plugin-mouse-linuxtp -plugin-mouse-pc -plugin-mouse-linuxinput \
-no-qt3support -no-javascript-jit \
-opensource -confirm-license -make libs \
-optimized-qmake -no-nis -no-cups -no-iconv \
-no-pch -no-dbus -no-accessibility -no-webkit \
-no-qvfb -no-gtkstyle -no-openssl -no-nas-sound \
-nomake examples -nomake tools \
-qt-freetype -qt-libpng -qt-zlib -qt-libjpeg
```
其中,`-xplatform`参数指定了Qt的平台为`qws/linux-arm-gnueabi-g++`,`-depths`参数指定了支持的颜色深度,`-qt-mouse-pc`和`-qt-mouse-linuxinput`参数指定了支持的鼠标类型,`-no-qt3support`参数表示不支持Qt3,`-no-webkit`参数表示不支持WebKit,`-no-qvfb`参数表示不使用Qt的虚拟桌面,`-no-gtkstyle`参数表示不使用GTK风格,`-no-openssl`参数表示不使用OpenSSL,`-no-nas-sound`参数表示不使用NAS音频系统,`-qt-freetype`、`-qt-libpng`和`-qt-libjpeg`参数表示使用对应的库。
编译完成后,可以在Qt应用程序中设置环境变量`QT_QWS_DISPLAY`为`linuxfb:/dev/fb0`来启用linuxfb显示。
使用gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf交叉编译qt5.6.2流程
以下是在 Ubuntu 18.04 操作系统下,使用 gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf 交叉编译 Qt 5.6.2 的流程:
1. 下载 gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf 工具链,并解压到某个目录下。
2. 安装 Qt 5.6.2 的依赖库:
```
sudo apt-get update
sudo apt-get install build-essential perl python git
sudo apt-get install libfontconfig1-dev libfreetype6-dev libx11-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev libxcb1-dev libx11-xcb-dev libxcb-glx0-dev libxcb-keysyms1-dev libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-util0-dev libxcb-xinerama0-dev libxcb-xkb-dev libxslt1-dev libgl1-mesa-dev libglu1-mesa-dev libsqlite3-dev libmysqlclient-dev libpq-dev libiodbc2-dev libasound2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libxrandr-dev libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-bad1.0-dev libgstreamer-plugins-ugly1.0-dev gstreamer1.0-libav gstreamer1.0-alsa gstreamer1.0-pulseaudio libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-bad1.0-dev libgstreamer-plugins-ugly1.0-dev
```
3. 下载 Qt 5.6.2 的源代码,并解压到某个目录下。
4. 进入 Qt 5.6.2 的源代码目录,执行以下命令:
```
./configure -release -opengl es2 -device linux-rasp-pi2-g++ -device-option CROSS_COMPILE=/path/to/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- -sysroot /path/to/sysroot -opensource -confirm-license -make libs -prefix /usr/local/qt5arm -no-xcb -no-pch -no-icu -no-gif -no-libjpeg -no-libpng -no-harfbuzz -no-openssl -no-qml-debug -nomake examples -nomake tests
```
其中,/path/to/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf 是 gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf 工具链的路径,/path/to/sysroot 是交叉编译环境的根文件系统路径。
5. 执行 make 命令进行编译:
```
make -j4
```
其中,-j4 表示使用 4 个线程进行编译。
6. 执行 make install 命令进行安装:
```
sudo make install
```
7. 完成后,在 /usr/local/qt5arm 目录下会生成 Qt 5.6.2 的安装文件。把该目录添加到交叉编译环境的 PATH 环境变量中即可使用。