最新固件ubuntu上跑qtcreator问题

你好,我在A311D上的最新固件ubuntu系统上通过 命令行方式安装QT库和QTCREATOR:sudo apt-get install qt5-default qtcreator。安装完成后,打开qtcreator,出现如下问题:
/usr/lib/aarch64-linux-gnu/qtcreator/plugins/libCtfVisualizer.so: 无法加载库/usr/lib/aarch64-linux-gnu/qtcreator/plugins/libCtfVisualizer.so:(/usr/lib/aarch64-linux-gnu/libQt5Quick.so.5: undefined symbol: _ZN20QOpenGLFunctions_1_014versionProfileEv, version Qt_5)

/usr/lib/aarch64-linux-gnu/qtcreator/plugins/libPerfProfiler.so: 无法加载库/usr/lib/aarch64-linux-gnu/qtcreator/plugins/libPerfProfiler.so:(/usr/lib/aarch64-linux-gnu/libQt5Quick.so.5: undefined symbol: _ZN20QOpenGLFunctions_1_014versionProfileEv, version Qt_5)

/usr/lib/aarch64-linux-gnu/qtcreator/plugins/libQmlDesigner.so: 无法加载库/usr/lib/aarch64-linux-gnu/qtcreator/plugins/libQmlDesigner.so:(/usr/lib/aarch64-linux-gnu/libQt5Quick.so.5: undefined symbol: _ZN20QOpenGLFunctions_1_014versionProfileEv, version Qt_5)

/usr/lib/aarch64-linux-gnu/qtcreator/plugins/libQmlProfiler.so: 无法加载库/usr/lib/aarch64-linux-gnu/qtcreator/plugins/libQmlProfiler.so:(/usr/lib/aarch64-linux-gnu/libQt5Quick.so.5: undefined symbol: _ZN20QOpenGLFunctions_1_014versionProfileEv, version Qt_5)
请问为什么这些动态库加载不了?

因为我们这边重新编译了qtbase的软件包,增加了gpu eglfs fbdev支持,就是说增加了gpu加速,但是有个限制,由于gpu只支持fbdev,不支持X11界面,而原生的qtcreater是基于X11 gpu驱动编译的,所以会报一些OpenGL的库找不到的问题,但实际上是没有使用这些库的,我试过在qtcreater上编译了一个UI的hello world,是可以正常跑起来的,你那边的应用是不能编译还是什么?

现在有两个选择:

1、完全使用ubuntu官方的QT包,不支持gpu加速,完全用cpu进行渲染,可以正常使用qtcreater,但是都是cpu来处理的,所以非常耗资源。

2、使用重新编译的qt包,支持gpu eglfs fbdev,在Framebuffer模式下支持gpu硬件加速,但是qtcreater会报一些关于OpenGL库的问题。

可以编译,但是只要打开源码,会在源码中提示很多没有定义,但是实际上是没有问题的。看了你的解释,貌似这种现象是正常存在?

为了使Qtcreator编辑和编译源码正常化,能不能优化优化呢?

之所以报错是因为原始qtcreater是基于OpenGL编译的,而我们VIM3 GPU是不支持OpenGL的,只支持OpenGL ES,如果这些报错不影响你的应用编译和运行的话,可以先不管,因为报错的这些库你也用不到。要解决这个问题可能需要全部重新编译qtcreater相关的软件包,但是依赖太多了,目前可能暂时不会做。

在提供一种方法,就是上面所说的第一点,完全使用ubuntu官方的软件包,这样的话QT就不会报错了。但是没有GPU加速。

操作方法如下:

1、重新烧录最新固件:https://dl.khadas.com/Firmware/VIM3/Ubuntu/EMMC/VIM3_Ubuntu-gnome-focal_Linux-4.9_arm64_EMMC_V1.0.6-210520.img.xz

2、登陆系统后,先禁止掉khadas的源

$ sudo mv /etc/apt/sources.list.d/fenix.list /etc/apt/sources.list.d/fenix.list.backup

3、在安装qt相关软件

$ sudo apt update
$ sudo apt-get install qt5-default qtcreator

好的,谢谢!但是一般跑程序和Qtcreator编译源码好像都不需要GPU加速吧?

编译不需要,运行的话看你的需求了,你如果只想在cpu上跑当然是没问题的。

禁止掉源,那么就意味着软件和系统升级不了。直接界面配置超频也就没有了。能不能有折中的办法?我的意思是当前ubuntu系统去掉GPU加速就行,其他都一样,有没有这样的ubuntu固件呢?你提供的固件好像做不到。