方法与网上介绍的Linux QT下实现的建立动态库一致,只需要,将代码中部分独立的文件单独编译为库文件即可

详细步骤如下所示

首先进入Linux虚拟机打开QT creator
在这里插入图片描述
File —> New C++ Librarry

命名需要新建动态库的名称及创建路径
在这里插入图片描述
QT库必须选择包含QtCore,如果库文件还有UI界面还需要包含QtGUI,其他Qt头文件同样根据库的使用进行包含。

在这里插入图片描述
定义生成文件和类

在这里插入图片描述
Finish
在这里插入图片描述
在这里插入图片描述
进入Qt Creator主界面
将要需要移植打包的动态库文件拷贝到相应的.cpp .h文件中
(前面所有界面为演示建立的一个新的动态库文件的方法,后面将打开一个之前经过测试成功移植到开发板的动态库文件)
将要编译为动态库的文件,调用关系尽量简单明了(这也是程序设计要做到的高度)
如,这两个类
在这里插入图片描述
本文以http_get文件进行
将项目文件在这里插入图片描述 httphet.cpp,Httpget.h中的内容相应的拷贝到http.cpp,http.h文件中
在这里插入图片描述

在拷贝完成选择编译之前,值得注意的是,我们需要将编译工具选择为开发板编译工具QtE-4.8.5 Tool —> OptinS

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
当设置完成后即可选择编译生成库文件
在这里插入图片描述 编译成功 在这里插入图片描述

编译完成后即可生成动态库文件,在工程目录下的另一个目录下

在这里插入图片描述
在这里插入图片描述
将编译好的动态库拷贝到NFS共享文件夹
在这里插入图片描述
至此,Qt动态库编译完成,接下来是关于如何将动态库用于项目和移植到运行到开发板中。

首先,我们需要重新清除编译之前的Qt项目,make distclean
删除之前生成的工程Pro文件
在这里插入图片描述
删除项目中之前保留的Httpget.cpp文件,只保留Httpget.h文件
在这里插入图片描述
在当前工程项目中创建库文件lib
在这里插入图片描述
将生成的动态库文件拷贝到lib文件夹下

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
重新生成项目Pro文件
在这里插入图片描述

打开Pro文件,添加,库文件路径,

在这里插入图片描述
完成后,生成Makefile文件
在这里插入图片描述
编译工程
在这里插入图片描述
编译完成,拷贝可执行程序到共享文件夹
在这里插入图片描述
开发板拷贝运行测试

在这里插入图片描述
在这里插入图片描述

开发板运行测试找不到相应的库文件,原因是因为我们在Linux虚拟机编译的动态库文件没有拷贝到开发板lib文件夹中,开发板调用不到相应的库文件信息。
将虚拟机中的库文件拷贝开发板中
在这里插入图片描述

在这里插入图片描述

再次运行,测试成功

在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐