我想从源代码为 Beaglebone Black 编译 Qt。
我有以下内容:
- 交叉编译器:gcc-linaro-arm-linux-gnueabihf-4.9-2014.06_linux
- qt-everywhere-opensource-src-5.3.1。
我的主机操作系统是 Scientific Linux 6.3 32 位。 我的问题是我不知道需要将哪些参数传递给 ./confiure 工具。 我有以下线索:
- -xplatform = qtbase/mkspecs/linux-arm-gnueabi-g++
- -device = qtbase/mkspecs/devices/linux-beagleboard-g++
- -device-option CROSS_COMPILE=/home/anjanu/Downloads/gcc-linaro-arm-linux-gnueabihf-4.9-2014.06_linux/bin/arm-linux-gnueabihf-g++
这是否正确?所有需要传递给 ./configure 的内容以及 sysroot 选项的用途是什么?
最佳答案
基本上,这本身就足够了:
-xplatform = qtbase/mkspecs/linux-arm-gnueabi-g++
其余的几乎都是红鲱鱼......
即使工具链二进制文件以其长名称正确命名,例如arm-linux-gnueabi-g++
,包含和库路径可能与系统包含和库路径冲突。这正是 sysroot 的目的。
您可以将其设置为您的交叉工具链安装的路径。不,这不是 Qt 安装。它是您可能从 Linaro 获得的 SDK,包括用于跨平台开发的整个 SDK。即编译器、链接器、剥离器、包含文件、库等。
关于c++ - 为 Beaglebone Black 编译 Qt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24839471/