yocto QT5 QSqlDatabase: QSQLITE driver not loaded

yocto中默认编译出来的qt是不带有sql driver,即缺少插件库libqsqlite.so。
修改位置:
1.在xx/meta-qt5/recipes-qt/qt5/qtbase_git.bb中,修改qtbase配方中QT_CONFIG_FLAGS,添加-plugin-sql-sqlite。这是根据单独交叉编译Qt5时,如果需要sqlite插件QSQLITE driver,需要添加配置选项-plugin-sql-sqlite来修改的。

diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb
index ef415d9..ad4d112 100644
--- a/recipes-qt/qt5/qtbase_git.bb
+++ b/recipes-qt/qt5/qtbase_git.bb
@@ -179,6 +179,7 @@ QT_CONFIG_FLAGS += " \
     ${QT_CONFIG_FLAGS_GOLD} \
     -shared \
     -silent \
+    -plugin-sql-sqlite \
     -no-pch \
     -no-rpath \
     -pkg-config \

2.在conf/local.conf中添加:

PACKAGECONFIG_append_pn-qtbase = " sql-sqlite"

修改完成后重新编译,在编译出来的镜像中即可找到库libqsqlite.so。
位置:rootfs/usr/lib/plugins/sqldrivers/libqsqlite.so,不同的平台及版本位置略有不同。

注:这两处要同时修改,我这种修改方式感觉不是最优的修改,如果您有更优化的修改,欢迎评论区指出。

要在VS Code中使用CMake配置OpenCV C++项目,可以按照以下步骤进行操作: 1. 确保已经安装了Visual Studio Code和CMake,并将它们添加到系统的环境变量中。 2. 创建一个新的文件夹作为您的项目文件夹,并在其中创建一个CMakeLists.txt文件。在CMakeLists.txt中,输入以下内容: ```cmake cmake_minimum_required(VERSION 3.0) project(YourProjectName) find_package(OpenCV REQUIRED) add_executable(YourExecutableName main.cpp) target_link_libraries(YourExecutableName ${OpenCV_LIBS}) ``` 这个CMakeLists.txt文件指定了项目的最低CMake版本、项目名称以及要使用的OpenCV库。 3. 在项目文件夹中创建一个main.cpp文件,并编写您的OpenCV C++代码。 4. 打开Visual Studio Code,选择“文件”->“打开文件夹”,并选择您的项目文件夹。 5. 安装CMake Tools插件。在Visual Studio Code的扩展面板中搜索"CMake Tools"并安装。 6. 在Visual Studio Code的底部状态栏,找到一个齿轮图标,点击它以打开CMake Tools。 7. 在CMake Tools的侧边栏中,选择您的项目文件夹并点击“配置”。 8. 在弹出的对话框中,选择一个构建目录(可以是您项目文件夹下的子文件夹),然后选择CMake工具链。 9. 在弹出的对话框中,输入以下参数并保存: - "cmake.configureOnOpen": false - "cmake.buildDirectory": "build" 这些参数将配置CMake Tools以在打开项目时不自动运行CMake,并将生成的文件放在名为"build"的文件夹中。 10. 回到CMake Tools的侧边栏,点击“配置”按钮,然后选择“生成”按钮。这将运行CMake生成您的项目。 11. 在CMake Tools的侧边栏中,点击“构建”按钮来编译您的项目。 12. 您可以在Visual Studio Code的终端中运行您的可执行文件,或者根据需要进行调试。 这样,您就可以在VS Code中使用CMake配置OpenCV C++项目了。记得根据您的具体项目情况修改CMakeLists.txt和main.cpp文件。祝您成功!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值